log☇︎
128700+ entries in 0.058s
asciilifeform: i'ma never live this down, will i.
asciilifeform: ^ the corrected patch.
asciilifeform: mircea_popescu: http://btcbase.org/log/2016-08-18#1524113 ☝︎
asciilifeform: mpidump shows the thing you end up seeing in pgpdump -i.
asciilifeform: this output is rubbish
asciilifeform: and padding at the end of each chunk.
asciilifeform: with plenty of nulls
asciilifeform: that does not correspond to an integer, as such, it has pieces of it, chunks, each having a header
asciilifeform: mircea_popescu this is still a raw mpi hexdump
asciilifeform: ( aaaaaanyway my ORIGINAL aim when i wrote the tester, was to look at what happens at 4096 and above. which i haven't even done yet ..! )
asciilifeform: show?
asciilifeform: 2 ain't 32 tho.
asciilifeform: but we knew this 20yrs ago.
asciilifeform: well no shit.
asciilifeform: aha?
asciilifeform: snooooooooore.
asciilifeform: http://wotpaste.cascadianhacker.com/pastes/a05c54ca-62fb-4e5c-aa0c-c891f2acc1e1/?raw=true << output.
asciilifeform: sure is.
asciilifeform: and now,
asciilifeform: http://wotpaste.cascadianhacker.com/pastes/5e37a7ac-2f58-41d1-a497-e808705505d8/?raw=true ☟︎
asciilifeform: i suppose i gotta do one last, sane run nao.
asciilifeform: the dumped string is RAW MPI CRAPOLA
asciilifeform: at leas asciilifeform oughta.
asciilifeform: and probably ought to go to bed
asciilifeform: we're chewing on mpi header.
asciilifeform: and what is ~really~ in 'prime' ?
asciilifeform: hint: what does log_hexdump do
asciilifeform: shall i say it or has everyone already figured it out.
asciilifeform: ok turns out that nobody can count x2.
asciilifeform: (you get 2 moduli always, prim and sub)
asciilifeform: p1,q1, p2,q2 rather
asciilifeform: mircea_popescu: and what did the p and q in the privkey look like ?
asciilifeform: etc.
asciilifeform: the output of 'YieldPrime', per my model, ought to end up in http://btcbase.org/log/2016-08-18#1524021 ☝︎
asciilifeform: so far i am at a loss as to how one becomes the other.
asciilifeform: ah yes.
asciilifeform: in http://wotpaste.cascadianhacker.com/pastes/c5ac34fd-8db4-45b8-bc89-5f7655045aa0/?raw=true ??
asciilifeform: how the fuck these turn into the sane-looking p's and q's.
asciilifeform: now for the $64k question:
asciilifeform: (in case anyone ever wondered why.)
asciilifeform: which is why i post the actual in and out, instead of contents of my head.
asciilifeform: anyway the patch ^ shown above is the ticket.
asciilifeform: yes i did, lel
asciilifeform: did i push that button??
asciilifeform: and what did mircea_popescu use for a compiler, that ate this.
asciilifeform: dafuq would an unintegral number of bits refer to ??
asciilifeform: no ?
asciilifeform: i'ma let one of you fellers tell me when i wake up why 11 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 also didn't happen
asciilifeform: see folks, this is why i didn't qntra this yet, dun wanna pons&fleischmann it.
asciilifeform: http://wotpaste.cascadianhacker.com/pastes/b35a2bb1-15f7-44be-be39-b60faea2ede3/?raw=true << patch which produced ^.
asciilifeform: but still quite depressing.
asciilifeform: http://wotpaste.cascadianhacker.com/pastes/c5ac34fd-8db4-45b8-bc89-5f7655045aa0/?raw=true << correct output.
asciilifeform: so now we gotta do it all again.
asciilifeform: ought to be log_hexdump("\nYieldPrime: \n", ptest, nbits/8.);
asciilifeform: log_hexdump("\nYieldPrime: \n", ptest, nbits);
asciilifeform: not one of us, it turns out, can count
asciilifeform: asciilifeform, mod6, mircea_popescu , et al
asciilifeform: ok we're all fools
asciilifeform: http://wotpaste.cascadianhacker.com/pastes/9f874336-2304-432c-a9be-bf6f22955a43/?raw=true << output of above experiment.
asciilifeform: ^ patch for gpg1.4.10
asciilifeform: http://wotpaste.cascadianhacker.com/pastes/2123f7da-c117-442a-9d79-f316d0fae5e4/?raw=true
asciilifeform: let's try a small variation on the theme.
asciilifeform: dun forget to glue a saf to an ety first.
asciilifeform: which brings us to here and now.
asciilifeform: AAAAAND this is where we dump the buffer.
asciilifeform: (apologies for l0g bloat, but this has to be done..)
asciilifeform: mpi_set_bit( prime, 0 );
asciilifeform: mpi_set_bit (prime, nbits-2);
asciilifeform: if (secret)
asciilifeform: mpi_set_highbit( prime, nbits-1 );
asciilifeform: the requested keysize we set the 2 high order bits */
asciilifeform: doing that for RSA, to make sure that the modulus does have
asciilifeform: If we are generating a secret prime we are most probably
asciilifeform: /* Set high order bit to 1, set low order bit to 0.
asciilifeform: which then gets, for good shitgnomatic measure,
asciilifeform: char *p = get_random_bits( nbits, randomlevel, secret ) ☟︎
asciilifeform: contains a single rng invocation,
asciilifeform: gen_prime( unsigned int nbits, int secret, int randomlevel )
asciilifeform: and now,
asciilifeform: prime = gen_prime( nbits, 1, 2 );
asciilifeform: generate_secret_prime( unsigned nbits ) gives us a
asciilifeform: primegen.c:
asciilifeform: q = generate_secret_prime( nbits / 2 );
asciilifeform: p = generate_secret_prime( nbits / 2 ); ☟︎
asciilifeform: generate(...) in rsa.c
asciilifeform: i'll walk through here:
asciilifeform: thing is, nextprime cannot walk all that far
asciilifeform: but pre-'nextprime'
asciilifeform: dump is post-whitening.
asciilifeform: nope
asciilifeform: ... it looks as if there is an extra layer of shuffle not accounted for by the dump?
asciilifeform: ^ from my original shot.
asciilifeform: http://wotpaste.cascadianhacker.com/pastes/ababdff0-7902-42b8-9d39-732e1a701116/?raw=true
asciilifeform: you gave it a passphrase.
asciilifeform: mircea_popescu: this is useless
asciilifeform: .
asciilifeform: http://wotpaste.cascadianhacker.com/pastes/9a139b53-7122-4eaf-b940-2407ca5d8974/
asciilifeform: and
asciilifeform: http://wotpaste.cascadianhacker.com/pastes/547e0a4f-8f73-43f2-82f2-9b5d540ff249/
asciilifeform: build it from src, it is small.