Lisäsin muutaman kytkimen newressu-satunnaislukulelun parametreihin. Kytkimillä voi valita toisen satunnaislukulähteen. –fast kytkimellä valitaan nopea versio ressusta, joka ajaa ressu_genbytes_fast rutiinin kahteen kertaan. –urandom lukee satunnaisuuden /dev/urandom tiedostosta. –random lukee satunnaisuuden /dev/random tiedostosta. Oletuksena /dev/random:in käyttö on pois päältä (USE_RANDOM). –ressu on oletustoiminta, eli käytetään uutta ressua. Tällä ensimmäisellä readfile_xor() rutiinilla luetaan satunnaisuutta /dev/*random tiedostoista: Seuraavaksi… Continue reading Ressu 2.0 Vaihtoehtoiset satunnaisuuslähteet
Author: admin
Ressu 2.0 Uusi limitin laskenta
Kaikki oikeudet pidätetään. Edellinen posti jäi auki limitin laskennan osalta. Edellisessä kokeiltiin sqrt() ja cbrt() funktioita, mutta todellisuudessa kumpikaan niistä ei toimi halutulla tavalla. Tässä postissa limit lasketaan selailemalla vaihteluja alimmasta ylimpään, ja tarkastamalla onko edellinen vaihtelu*1.6 suurempi kun tämän kierroksen vaihtelu. Tässä postissa on myös muutos debukkaustulosteeseen. Edellisessä postissa kerroin että kellojono koostuu perusmateriaalista… Continue reading Ressu 2.0 Uusi limitin laskenta
Ressu 2.0
Kaikki oikeudet pidätetään. Tässä ressun uusimmassa versiossa on uusittu asiakaspuskurin hallintaa, löydetty kellojonosta löytyvien satunnaisbittien “laskentaan” uusi menetelmä. Asiakaspuskurin hallinnassa aiemmin asiakas toimitti puskurin satunnaisbittigeneraattorin täytettäväksi, ja satunnaislukugeneraattorilla ei ollut “omaa” muistialuetta. Näin jää aina mietittäväksi voisiko edellisestä puskurista laskea seuraavan tai päätellä satunnaisbittigeneraattorin ensimmäisen puskurin. Uudessa versiossa ressulla on oma puskurinsa, josta ressu palauttaa… Continue reading Ressu 2.0
DBS versio 0.08
DBS on tertun palvelinohjelma, joka vastaanottaa asiakkaan selaimelta sivupyyntöjä, kutsuu sovellusohjelmaa (DBA), joka muotostaa sivupyynnön pohjalta vastauksen. Vastaus palautetaan DBS:lle, joka lähettää tuloksen asiakkaalle. Edit: muutoksia julkaisun jälkeen: Palvelimissa on vielä ongelmaa Safari-selaimen kanssa, safari menee “luuppiin”, jos haetaan sekä portillista ja portitonta URL:ää vuorotellen (moijari.com ja moijari.com:5005). .ico (favicon.ico) tiedostopyyntöjen ohittamista varten lisätty muuttuja… Continue reading DBS versio 0.08
Istuntoavaimen luominen
Tässä postissa käyn läpi tertun ns istuntoavaimen muodostamisen. Istuntoavaimen luomiseen tarvitaan satunnaisbittigeneraattori ja joku sisäinen malli, jonka mukaan istuntoavain muodostetaan satunnaisbittigeneraattorin antamista biteistä. Ensin yksinkertainen satunnaisbittigeneraattori ressu: Tässä käytetään vain yhtä lähdettä, ressua. Varmuuden vuoksi kannattaa lisätä ainakin toinen lähde. Ja sitten rutiinit, joilla satunnaismerkkejä saa merkki kerrallaan: Seuraava rutiini arpoo istuntoavaimen merkki kerrallaan: Session… Continue reading Istuntoavaimen luominen
Hash:äämällä satunnaisuutta HTTP ja HTTPS sivuista
Aluksi pari apuohjelmaa, joilla luodaan yhteys ja tulostetaan merkkijonoja: Edit: Kun käytät satunnaisuutta jostain lähteestä, älä käytä sitä suoraan vaan lisää se muihin lähteisiin (esim hash funktiolla) , ja muodosta tuloksesta satunnaisbittejä. Käytä näitä vain sivuihin, joiden käyttöön sinulla on lupa ja harvoin, sillä vaarana on palvelunesto. Muista noudattaa sääntöjä ja lakeja. Nyt myös https… Continue reading Hash:äämällä satunnaisuutta HTTP ja HTTPS sivuista
5 puskurinen printf rutiini
Edellisestä postista muodostui oikea TLDR-paketti (https://moijari.com/?p=1256) , ja ajattelinkin kirjoittaa lyhyempiä kappaleita sen “valmiista” osista. Toinen TLDR-paketti: (https://moijari.com/?p=964). Suurimpia asioita tertussa on se, että saatiin aikaan toimiva kyselymalli, ja https- ja http- palvelimet, eli DBS osuus ovat pitkällä, Myös DB osuus on periaatteessa toimiva pientä tietokantaa varten. Käännöksistä saatiin ensimmäiset ideat. Db-osuuteen voi tietenkkin tulla… Continue reading 5 puskurinen printf rutiini
Jatkoa tertulle DB2, DBS ja DBA 0.05
Kaikki oikeudet pidätetään. Olen jo jonkin aikaa ihmetellyt satunnaisbittejä ja terttu on jäänyt vähemmälle huomiolle. Jos haluat lukea valmiimmista ohjelmista, tässä fort (https://moijari.com/?p=964), tässä ressu1.7 (https://moijari.com/?p=798), ja tässä ressu1.8 (https://moijari.com/?p=842). Tässä postissa esitellään uusi yritys tertusta. Ohjelma koostuu tietokannasta (DB2) ja html-lomakeohjelmasta (DBS). db_ alkuiset rutiinit kuuluvat tietokantaan ja dbs_alkuiset rutiinit html-liittymään. Postin aluksi käydään… Continue reading Jatkoa tertulle DB2, DBS ja DBA 0.05
FORT v0.4 uusi versio
Fortin edellisestä versiosta (https://moijari.com/?p=634) on kulunut jo jonkin verran aikaa ja uudessa versiossa on muutoksia, joten ajattelin postata uuden version. Oikeastaan varsinaisessa koodissa ei ole paljon muutoksia, ainoastaan nuo lohkon alun (FORT_INTERNAL_EVENTS_START) ja lopun (FORT_INTERNAL_EVENTS_END) makrot. Funktioiden esittelyt ovat muuttuneet siten, että tämän tiedoston (fort.c) sisäisiin apufunktioihin on lisätty static sana, joka estää funktioiden käytön… Continue reading FORT v0.4 uusi versio
FORT sisäisten satunnaistapahtumien lisääminen uudistunut
Tässä postissa esitelty tapa helpottaa fort koodin lukemista ja ohjelmasi omien tapahtumien lisäämistä. Tämä lyhentää koodia runsaasti ja helpottanee sen ymmärtämistä. Jos lisäät tapahtumia omaan ohjelmaasi, tee makroista ja internal_events -muuttujasta uudet versiot ilman internal sanaa. Ennen satunnaistapahtumat lisättiin seuraavalla lohkojen alkuun ja loppuun lisättävällä koodilla: Tässä lähetetään satunnaistapahtumia, joiden source on 10 ja 11.… Continue reading FORT sisäisten satunnaistapahtumien lisääminen uudistunut