Ressun edellisessä versiossa(1.7) oli ongelma että myös perusriveistä laskettiin teoreettisia satunnaisbittejä. Tässä pyritään laskemaan mukaan ainoastaan poikkeukset säännöstä. Jos esimerkiksi perusketjut ovat kuuden merkin pituisia, tämän pitäisi laskea vain kuudesta poikkeavat ketjut, eli seiskat ja viitoset kuten edellisen postin esimerkissä. Tällä tavoin teoreettisten satunnaisbittien lukumäärä on lähempänä oikeata. Tässä varsinainen uusi koodi kokonaisuudessaan, muutetut rivit… Continue reading RESSU 1.8
Uusi versio Ressu:sta (v 1.7)
Tässä vielä uusi versio ressu generaattorista: uudessa versiossa ei ole enää aiempien versioiden b-muuttujaa eikä siihen liittyvää laskentaa, eli ei tarvita erillistä pääohjelmaa. Edellisessä versiossa oli useampia tapoja laskea teoreettisia bittejä, niistä on vain yksi jäljellä. Ressufunktio muodostuu pääluupista, jonka alla on kaksi pienempää luuppia. Pääluuppi (for(c=) sanelee että kaikki puskurin bitit pitää kiertää vähintään… Continue reading Uusi versio Ressu:sta (v 1.7)
SHA256 tiivisteen laskentaohjelma
Tässä tiivisteohjelma edellista Fort satunnaisbittigeneraattoria varten. Alun definet määrittelevät Fort-ohjelman käyttämille HashInit, HashUpdate ja HashFinal funktioille todelliset nimet. Lisäksi määritellään HashName, joka tulostetaan fort_init:in alussa ja HashLen joka sisältää tiivisteen pituuden. Sitten typedef:it määrittelevät uudet tyypit IUBYTE, joka on 8 bittiä (1 merkkiä) pitkä., IUWORD, joka on 32 bittiä (4 merkkiä) pitkä ja IULONG, joka… Continue reading SHA256 tiivisteen laskentaohjelma
Fort, Fortunan kaltainen satunnaisbittigeneraattori
Fort:in päärakenne tallettaa satunnaisbittigeneraattorin lähteet (pool), joihin satunnaisuutta lisätään ja joiden pohjalta sitä generoidaan. Lähteitä on 32 kappaletta ja niiden muistirakenne sisältää satunnaismerkkien lukumäärän lähteessä ja hash toiminnon yhteysalueen (HashCtx). Merkkien lukumäärää ensimmäisessä poolissa (0) käytetään sen selvittämiseksi onko lähteissä tarpeeksi satunnaisuutta seuraavaa avainnusta varten. Lähteen (tai puskurin) HashCtx yhteysalueeseen lisätään uusi ohjelmalle annettu satunnaisuus… Continue reading Fort, Fortunan kaltainen satunnaisbittigeneraattori
Kellosarjassa olevat satunnaiset bitit
Tässä uusimmassa versiossa yritetään laskea paremmin kellosarjasta tulevia satunnaisbittejä. Ohjelmassa lasketaan satunnaisbittejä neljällä eri tavalla. Ensimmäisessä tavassa (muuttuja b) lasketaan kellosarjojen pituuksia, eli sitä kuinka monta kertaa peräkkäin sama numero ilmenee. Tämä tapa on ollut mukana alusta asti. Toinen tapa on periaatteessa sama, aina kun kellosarjan numero vaihtuu, lisätään teoreettiseen satunnaisuuteen yksi bitti (muuttuja rndbits).… Continue reading Kellosarjassa olevat satunnaiset bitit
Ressu kokeilu: satunnaisuuden leviämisen nopeuttaminen
Ressu kokeilu yrittää lisätä satunnaisuuden muodostamista siirtämällä kellojonon luvun jälkeen alimmasta eli “tarkimmasta” bitistä satunnaisuutta seuraavien merkkien ylempiin bitteihin. Se ei tietenkään pysty lisäämään satunnaisuutta kelloon mutta se nopeuttaa satunnaisuuden leviämistä kaikkiin puskurin bitteihin. /* * Ressu−satunnaislukugeneraattori versio 1.0 (ressugen.c) * * (c)2013−2018 Jari Kuivaniemi, Kaikki oikeudet pidätetään! */ #include <stdio.h> #include <sys/time.h> unsigned char… Continue reading Ressu kokeilu: satunnaisuuden leviämisen nopeuttaminen
Ressu versio 1
Tässä oikeastaan ensimmäinen “virallinen” julkaisu Ressu-satunnaislukugenetaattorin versiosta 1.0. Edit: muokattu julkaisun jälkeisten viikkojen aikana. Satunnaislukugeneraattorihan koostuu kahdesta funktiosta, clockbyte(), joka palauttaa kellojonon seuraavan merkin, ja ressu_genbytes(), joka on varsinainen generaattori. Ensimmäinen kierros genbytes() rutiinista vaihtaa jokaisen merkin bittien järjestystä ja summaa merkkiin seuraavan kellojonon merkin. Ajatuksena on että jokainen tuloksena tulevan puskurin bitti koskee kaikkia… Continue reading Ressu versio 1
Salasanan salakirjoitus tertussa
Kaikki oikeudet tietenkin pidätetään. Viimeinen versio ohjelmasta löytyy seuraavasta linkistä: moijari.com:5002. Ressu satunnaislukuja löytyy osoitteesta: moijari.com:5001. Ikuinen kalenteri osoitteesta: moijari.com:5003. Salasana on salakirjoitettuna muodossa: sha256:ee84f5affcf47d:51567b8c4c20db2a00ea24eaae125a26f5c7c87fdbe5b90a02225fc97008b49a (oheinen salasana on muuten “SalaSana1234″) ja vielä unsigned char *peppper=”l7IKrgcLMgsl_4Wv”; Alussa salatun salasanan tallennusformaatti, kaksoispisteen jälkeen alkaa salt:ti ja seuraavan kaksoispisteen jälkeen alkaa kryptattu salasana. Tämä ensimmäinen rutiini salakirjoittaa password… Continue reading Salasanan salakirjoitus tertussa
Hash:in käyttö tertun kyselyn käsittelyssä
Kaikki oikeudet tietenkin pidätetään. Viimeinen versio ohjelmasta löytyy seuraavasta linkistä: moijari.com:5002 Tällä hetkellä ajattelen että terttu jakautuu kahteen osaan, sovellusosaan ja tietokantaosaan. Sovellusosa sisältää kaikki sovelluskohtaiset asiat, kuten tertussa olevat logon-rutiini, sovellus-rutiini, prosessien jatkaminen, talletus-rutiini ja nuo sarakkeiden siirtelyt prosessien yhteydessä. Tietokantaosa sisältää toiminnot fetch ja save, jotka ovat yksinkertaisia toimintoja. Fetchillä luetaan rivejä ja… Continue reading Hash:in käyttö tertun kyselyn käsittelyssä
HTTP ja HTTPS palvelimen pääohjelma
Kirjoitin uuden version terttu palvelimen pääohjelmasta. Nyt se pystyy vastaamaan myös https viesteihin. Kokeiluversiossa ohjelma antaa satunnaislukuja, ja sitä voi ajaa näistä linkeistä https://moijari.com:5001 ja https://moijari.com:5001. En vielä ostanut certifikaattia moijari.com:ille, joten moijari.com nettiosoitteelle pitää luoda poikkeus, jos haluaa sitä käyttää https:llä. Ohjelman alussa ovat c tyyliset includelauseet, joilla luodaan erilaisia muuttujia, rakenteita ja funktioiden… Continue reading HTTP ja HTTPS palvelimen pääohjelma