sina: 1001101101000010000011010111101001110001111010111110011100000110000111100111110011100001
mircea_popescu: this is where a step by step printout would be useful.
sina: would you be willing to look?
sina: hmm, I don't think my rewind is working
sina: gonna have to switch looping mechanism
sina: lol now I am in infinite loop
sina: mircea_popescu: pls help me understand rewind? doesn't it guarantee loops if I end up in a step which has a rewind? because I will go back one and then rewind?
deedbot: punto voiced for 30 minutes.
mircea_popescu: That bit in R is flipped and we rewind. << the definition of the op makes cycles impossibru as such
sina: damn debug statements make it impossible to follow
sina: mircea_popescu: per the spec, " During each step, the function considers whether the position-th bit in M is 0 or 1, and executes a defined set of operations in either case. Once the operations have been executed, the position is incremented by one."
sina: so, do we rewind, and then still increment?
mircea_popescu: it always adds 1. sometimes it also substracts 1. rthat is all.
sina: lol, that changed it a little, now I loop at step 71 instead of 5 :P
sina: it seems to be flipping correctly :(
mircea_popescu: paste your story. and plox use wotpaste i dun have that paste.ca thing in hosts
ben_vulpes: hey sina mircea_popescu logs for comparison
deedbot: candi_lustt voiced for 30 minutes.
ben_vulpes: candi_lustt: (mpfhf:mpfhf #*1001101101000010000011010111101001110001111010111110011100000110000111100111110011100001 10)
ben_vulpes: logs are not exactly the same, bridging will be required until i match the hashonator's log format
ben_vulpes: also output hashes larger than a certain size won't post because reasons i haven't run down yet
ben_vulpes: magic numbers probably; max file size in nginx or something who knows
ben_vulpes: kinda thinking i should just maintain a "mpfhf currently backing candi" on that page
mircea_popescu: screwed element is now #*0000000000 << this is not possible, you screwed nothing
mircea_popescu: screwing #*0000000000 at position 0 with count 0 << the problem. it is not possible for a bit count to be 0.
mircea_popescu: R bitcount is 10 in this case ; S bitcount starts at 1.
ben_vulpes: unfortunate log line, both screw and half screw share implementation
mircea_popescu: ben_vulpes ok, so was that a half-screwing of s in r and s was 1 bit long so it did nothing ?
ben_vulpes: mircea_popescu: perhaps to start with simpler runs?
mircea_popescu: element is now #*1010000000 << ok, seems to make sense up to there.
mircea_popescu: screwed element is now #*1000101000 << also seems right
mircea_popescu: skipping ahead, Our work has ended, in 141 steps and using 96 bits for the state machine. The message was #*1001101101000010000011010111101001110001111010111110011100000110000111100111110011100001 and the resulting hash is #*0010011100
deedbot: candi_lustt voiced for 30 minutes.
ben_vulpes: like i said, wackadoodle on uniform inputs.
ben_vulpes: on uniform inputs and shorter desired output hashes it has trouble breaking out of certain patterns
mircea_popescu: Our work has ended, in 4 steps and using 1 bits for the state machine. The message was #*1111 and the resulting hash is #*1111
mircea_popescu: you mean to tell me the idempotent value for mpfhf is actually ff ?
mircea_popescu: if 1, half-screw S in R. If the bit in R found at the position equal to the remainder of the division of our position in M by the size of R is equal to the bit in S found at the position equal to the remainder of the division of our position in M by the size of S
mircea_popescu: ben_vulpes mind making the alterations and let's see ? ima edit the spec later too
sina: - * We screw S in R.
sina: + * We expand S and screw R in S.
mircea_popescu: (technically "expand" is always re s, as per definition, but sure.)
sina: making that modification and my thing no longer loops
sina: 1000111001011100101000010000100000000001111000010100001100000100
sina: for "MP kicks ass!"
mircea_popescu: you prolly still have a bug in there though, just no longer on this case.
sina: mircea_popescu: seems you're correct, "MP kicks3453453453 ass!" still loops
mircea_popescu: candi_lustt: (mpfhf:mpfhf #*11111111111111111111111111111111 64)
candi_lustt: mircea_popescu: #*0000000000000000000000000000000000000000000000000000000000000000
mircea_popescu: candi_lustt: (mpfhf:mpfhf #*11111111111111111111111111111111 32)
candi_lustt: mircea_popescu: #*00000000000000000000000000000000
mircea_popescu: candi_lustt: (mpfhf:mpfhf #*11111111111111111111111111111111 16)
mircea_popescu: ben_vulpes i shall now withdraw into my cellar with the instruments.
sina: ben_vulpes: any chance you'd be willing to take a peek at my code>?
sina: oh, is it still workday where you are?
ben_vulpes: "my own time" meaning when i feel like it
ben_vulpes: i do actually enjoy the humans i keep in my house, amazing though that may seem
ben_vulpes: in the interim sina do feel free to read what i've written and generate data to compare yours against
sina: the log msgs make it much harder to follow the code unfortunately, my code has the same issue :(
ben_vulpes: so copy it into your own buffer and rip 'em out, what
deedbot: candi_lustt voiced for 30 minutes.
sina: candi_lustt: (mpfhf:mpfhf #*1001101101000010000011010111101001110001111010111110011100000110000111100111110011100001 64)
candi_lustt: sina: #*0000000101010011000110110101001101111011101001000100010101110001
sina: candi_lustt: (mpfhf:mpfhf #*1001101101000010000011010111101001110001111010111110011100000110000111100111110011100001 32)
sina: candi_lustt: (mpfhf:mpfhf #*1001101101000010000011010111101001110001111010111110011100000110000111100111110011100001 64)
candi_lustt: sina: #*0000000101010011000110110101001101111011101001000100010101110001
sina: candi_lustt: (mpfhf:mpfhf #*1001101101000010000011010111101001110001111010111110011100000110000111100111110011100001 32)
sina: mircea_popescu: earlier you said half screw should round down. In that case, if len is 1 the halfscrew will be 0. so should no iterations be peformed on halfscrew where the len is 1?
sina: mircea_popescu: ok thanks
sina: I feel like my code is now correct, and it no longer loops. However I'm getting different results to ben_vulpes
sina: e.g I get 1000010000110110001010111111010000010110110100000010010100110110 for "MP kicks ass!" 64
sina: sorry can you clarify "re maxint"?
mircea_popescu: try <mircea_popescu> candi_lustt: (mpfhf:mpfhf #*11111111111111111111111111111111 64)
sina: 0110100011001111010010001111100000000001110001111000001001000001
mircea_popescu: see, i suspect ben_vulpes 's thing has a subtle bug in it but i can't seem to find it ;/
sina: that was 32 chars of 1s right?
sina: cos I test with "M = [1] * 32"
sina: 0010111010001000101011101000100000110011110111011111001001110010
PeterL: I had an idea for another function to use in the fabulous hash: a conditional screw - where on step n, for i in length S, if S[i] then flip R[n*i mod len(R)]
sina: I keep taking the debug lines out because it's fucking impossible to follow the logic of the code with them in
mircea_popescu: PeterL the problem is that even as is the complexity is pretty hard to manage. making more complex primitives is not going to help this
mircea_popescu: though in principle the mpfhf is a function fambly -- anyone can make any sort of thing he wants
PeterL: just something to think of for future versions of the hash
sina: mircea_popescu: nope
mircea_popescu: i don't readily see a problem with the story as displayed.
sina: mircea_popescu: there was a bug in my screw method which caused the cycle, once I identified it, it stopped cycling
ben_vulpes: yes i know, asking if that hasa your fixed screw method
sina: mircea_popescu: can you confirm/clarify "his operation consists of taking the bit count of either S or R, iterating over that value, at each step multiplying the iterator with the current position in M" ...
sina: it's the value of the iterator, not the value of the bit at the iterator position?
sina: I had it originally set to the value of the bit, and that was the cause of my cycle
sina: changing it to the value of the iterator per ben_vulpes cl code fixed it
mircea_popescu: and are very explicit : screwing iteration 22 screwing product is 946 index of element to flip is 18 etc
sina: currently trying 2048bit hash of GPLv2 out of curiosity, will lety ou know when it finally completes :P
sina: I dunno, I keep deleting the debug statements
sina: also testing with pypy
sina: ben_vulpes: in your halfscrew I notice (underlying-screw b m-position (floor (/ (length a) 2)))
sina: ben_vulpes: as you can see my implementation for screw is only 3 lines long, can you see any faults in it?
sina: ben_vulpes: also per above my halfscrew won't take any action if the len(a) is 1, can you confirm cl behaviour?
ben_vulpes: mircea_popescu: and i worked this example at one point, i'm pretty sure the expected value of 011 is correct
ben_vulpes: the length of your implementation does not particularly bear
sina: I only mean in the sense, glaring errors or differences that cause disagreement between implementations, should be obvious
ben_vulpes: i work slowly, i'll let you know if i find anything
ben_vulpes: one difference is that you loop from 0 up and i from 1
ben_vulpes: i'm trying to remember why i indexed at 1 there
sina: mircea_popescu: can you confirm/clarify same statement above, start at 0 or 1?
sina: yes but your reading of the footnote does seem correct, it starts at 1
ben_vulpes: ah no wait because multiplying index by 1
ben_vulpes: screws will always have an initial element of zero otherwise
sina: - flip(b, ((i * M_pos) % len(b)))
sina: + flip(b, ((i+1 * M_pos) % len(b)))
sina: then I get the same issue as you
sina: 64 1s and 32 1s result in hashes of all 0s
ben_vulpes: it wasn't just 64s, there's another element to the pattern
deedbot: candi_lustt voiced for 30 minutes.
ben_vulpes: well in the absence of ideas, shall we index from zero?
sina: I dunno if this makes any difference
sina: but when you have a string of all 1s
sina: there is no rewind, right?
ben_vulpes: this is perfect example of "too complex for me to understand!" complaint of asciilifeform's re hash design
sina: so the step == M_pos
sina: ok, so should I keep my screw implementation as is?
sina: or is this a spec bug
☟︎ ben_vulpes: my next q is does the iteration run [0, count] or [0, count)
☟︎ sina: sorry I don't grok that syntax diff
sina: does it mean to the final of the array and n-1?
sina: ben_vulpes: if you count from 0 do we get same hashy hash?
ben_vulpes: gimme a second, i'm handling two implementations here
sina: lol...the 2048 bit hash for GPLv2 was taking a really long time so I killed it to add some print statements. Checked "wc -c LICENSE", it reports ~18,000 chars. I re-ran mpfhf with 32 bits, thinking it'd finish at M_pos ~18,000
sina: still going, currently at 20893
sina: wonder what it's doing
sina: oh right, its binary, stupid me
sina: this is definitely going to need a system language impl
sina: assuming it's a correct implementation of the spec anyway
ben_vulpes: oh man how do i even pass your thing an array of zeros and ones
sina: ben_vulpes: M = [0] * 32
mircea_popescu: candi_lustt: (mpfhf:mpfhf #*11111111111111111111111111111111 64)
candi_lustt: mircea_popescu: #*0110100011001111010010001111100000000001110001111000001001000001
mircea_popescu: candi_lustt: (mpfhf:mpfhf #*1111111111111111111111111111111111111111111111111111111111111111 64)
candi_lustt: mircea_popescu: #*0010111010001000101011101000100000110011110111011111001001110010
mircea_popescu: candi_lustt: (mpfhf:mpfhf #*1111111111111111111111111111111111111111111111111111111111111111 128)
candi_lustt: mircea_popescu: #*01101000010111101000010110001100001011110000110000101110110101111010010101000000011011111010011011110001001100010111101010011100
mircea_popescu: candi_lustt: (mpfhf:mpfhf #*11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 256)
candi_lustt: mircea_popescu: #*1111111010101111011001101011011111101000101011111101011110010111010011100111000011000101000010111000111011110100100101010011011111010111001011011101010011011101011000100010001000111110000010010011001100011111100000100001010111101111010110000111010101011100
sina: anyone tell you guys that' you're fucking crazy? :D
ben_vulpes: i mean yes, all the time. but what in particular today?
sina: watching this slow ass shit in python is making me want to start rewriting in C right now even though I have done nothing for the last ~24 except write this code, eat pizza and 8h of sleep
ben_vulpes: that's on my local machine, not even particularly high powered
sina: ben_vulpes: how fast can you run it against the GPL in my repo?
ben_vulpes: sina: gosh i'd have to do real work, turn strings into binary
sina: as if that isn't one line of lisp?
ben_vulpes: you missed the strings thread, didntcha
sina: I missed all the tings
ben_vulpes: sina: eeyyyyy that's the joke i'm making
sina: ok fuck this GPL hashing shit, let's just say, it's slow
sina: 16mins to get through ~36000 bits
mircea_popescu: that's the next step once we got a coupla canonical impls, is to burn it down.
mircea_popescu: do 64k 64 bit items see how long, 32 birt see how long, 1024 bit see how long etc
sina: let's validate the canonicality of the impls first? :P
mircea_popescu: sina pick random strings, announce the results, then we do candi and se
sina: if I pick a string I'll include the bitfield for lazy ben_vulpes
sina: or, you know, you could just copy the one line of python required to convert
ben_vulpes: i put a tool out there for you to use, use it
ben_vulpes: or we could start with bitfields and you could reverse them?
sina: sure, it's ~1 line of python :P
ben_vulpes: I WANT TO DO THE GPL THING LEAVE ME LONE
sina: soz mate, do it, I'm curious
ben_vulpes: that's when you fired the declaration of sovereignty
mod6: the tourny starts on the nov 2nd right?
ben_vulpes: probably including tea-sipping and not watching the debugger
ben_vulpes: oh man i get to break out the profiler!
ben_vulpes: myeah okay logging is expensive, good to know
ben_vulpes: mircea_popescu: all those consed bytes came from logging
mod6: io super exepensive / instrumentation is expensive
mod6: good for debugging though
ben_vulpes: some seven hundred odd seconds to hash the declaration
ben_vulpes: i only saw it one other time to night (6 of 'em), and i don't remember before
sina: mircea_popescu: still around?
mircea_popescu: do me a favour sina ; and ben_vulpes : post a copy of your code on the article. archival.
sina: mircea_popescu: is there any interest in a tmsr company offering stuff like git hosting etc?
sina: mircea_popescu: I pasted the python impl and it mangled my tabbing...I guess I wouldn't care normally but it's going ot be annoying for people to paste that and re-indent, any feature about preserving tabbing in your comment section?
sina: I'll repost with pre and you can delete the old one
sina: mircea_popescu: want me to link to github repos instead?
sina: I tried to make a C one but then I remembered I haven't touched anything with pointers in about 15 years
sina: golang is pretty fast these days
sina: and I'm not even on the latest ver
sina: so I settled for that
sina: it's pretty much native, and depending on how you write the program it doesn't really need GC
sina: fantastic, tell me how you did it and I'll do the golang one
mircea_popescu: <pre>. excewpt i think it strips them if you do it, asec
sina: mircea_popescu: if you have more fun stuff to code pls let me know
sina: I'm not cool like asciilifeform but I can bang some stuff out
mircea_popescu is too lazy to add pre to user comments ; i'll jusrt fix by hand heh
deedbot: mircea_popescu rated sina 1 at 2017/06/03 05:09:48 << missed on all the things!
mircea_popescu: !!v 98EEDC62094B6E4978458AFEF5836ADFE23C8D58302568110AF6CE2CA7873A9A
deedbot: mircea_popescu updated rating of sina from 1 to 2 << MPFHF canonical implementation.
a111: Logged on 2016-02-08 00:11 maqp: There is no way your system can defeat targeted SIGINT monitoring attack, where government drives within a few hundred meters and collects signals emitted by your keyboard cable.
sina:
http://btcbase.org/log/2017-06-10#1668370 <<< mircea_popescu I couldn't help but laugh at someone who is saying everyone should fork ricochet.im and work on it instead, or use OTR or whatever then blurt out that some just-barely-specified software isn't resistant to SIGINT attacks on your keyboard
☝︎ a111: Logged on 2017-06-10 12:39 mircea_popescu:
http://btcbase.org/log/2017-06-10#1668368 <<< what, some dood struggling for shared basis / an understanding of the world around him. most of the time it involves some flailing about.
sina: don't look at me man, I literally am using a 3072-bit DSA El-Gamal key for some reason
mircea_popescu: at least you didn't lose it, which is 100% more than what cvan be said for eulora players.
sina: thank the lord for gpg/rdiff/duplicity and cheap USB keys
lobbesbot: Logged on 2017-05-22 23:16:39: <Zakorus123> but i really think i should be allowed to come back
sina: I just watched Dave Chappelle latest comedy thing, fucking hilarious
sina: first gig in 10y he makes jokes about it
sina: "The Age of Spin" it was called.
sina: how many active users does eulora have?
sina: are most players drawn from the general vicinity of this and related chans? or internet randoms too?
mircea_popescu: i mean obv being bitcoin pegged it attracts lots of bitcoin/altcoin folks
sina: I also had some fun this evening reading teh logs
sina: no here. gossipd, libsodium/nacl, trump...a few other things I searched
mircea_popescu: there was a younger, more naive time when we seriously wanted someone to condense the logs
mircea_popescu: produce a summary of each day so that no lulz are missed
sina: that sounds like a pretty difficult task
sina: short of hiring a "reporter"
sina: greek man who invented hawaiian pizza in canada, dead
mircea_popescu: i recall them trotting him out periodically, "rich man! made by ourdemocracy! you could be next!!1" sorta bs.
a111: Logged on 2017-06-09 08:46 sina: do you know if the src for phuctor is avail?
sina: asciilifeform greatest pet hate: people embracing and extinguishing things
a111: Logged on 2017-06-09 15:11 asciilifeform:
http://btcbase.org/log/2017-06-09#1667584 << it is not, and ain't going to be, i'm not especially interested in helping folx to 'embrace and extinguish' it. as far as i'm concerned, 100% of the output is verifiable with the bignum calculator of your choice (e.g. 'bc') and it is no concern of anybody's how it was obtained.
mircea_popescu: well, in the particular case of phuctor, he has a solid point.
☟︎ mircea_popescu: there's this cloud of "academia" retards who have been pointedly ignoring / not citing it while publishing useless crap on the general topic.
sina: it's a very interesting topic
sina: I just went down the rabbit hole of links from that one
mircea_popescu: mirrors neatly how all sorts of dorks have been trying to create exactly the same, "just as good as bitcoin with just a bit of censorship" sort of bs.
mircea_popescu: which, for the people who were here for the original pgp wars, sounds like the empire never goes to school.
sina: something I have been looking into as well, kind of related in the testing-for-weakness-to-validate-sanity sense, is this program "cbmc"
sina: its a bounded model checker for C, you can use it to verify the correctness of whole programs but since it is a bit slow/brute force approach, normally you only can use it to test critical functions
sina: yes I believe so. it'd be interesting to run them against, for example, important gpg functions or similar
mircea_popescu: gpg is slated for a rewrite, actually, since it became obvious koch's a dedicated saboteur.
sina notes to search the logs for koch tomorrow
sina: for now, bedtime, getting late here
BingoBoingo: Those Anglos living under Indian colonial domination
mircea_popescu: what ? that they spent a few centuries passing for white while white ruled the world but now that white got some indescript malaise they'll pass for "something else" ie "of color" ?
BingoBoingo: I don't think they'll pass. Not to Tyrone and Petrus/
mircea_popescu: it's still not altogether clear tyrone & petrus actually matter in this complex social game.
BingoBoingo: Well, matter in the sense of being environmental hazards.
BingoBoingo: ah, well the amount of danger a mook creates depends on what the locals trust em to do
BingoBoingo: You put Jew that passed for white last year on PetrusofColor radar, and Petrus is going to remember because it's what Petrus does instead of being the dogman
BingoBoingo: tends to be a more targeted hazard than "mook was allowed to operate heavy machinery"
mircea_popescu: a while back they started trying to prosecute all overdose deaths as manslaughter-by-dealer. getting desperate, obviously.
BingoBoingo: Here in Illinois they inestigate to prosecute as murder by dealer, much progress
BingoBoingo: likely within 5 years dope selling on street will be prosecuted as "attempted murder" with zero CIA traffickers hung
mircea_popescu: fuck 'em, let the beautiful ratpeople choke in their own vomit, the sooner the empire ends the better.
BingoBoingo: Still, I would like to see the ranking if "complications of being a fat fuck" were consolidated and entered on list. Overdose would likely still win under 25 list, but age where "fat fuck" begins to beat overdose inspires curiosity.
BingoBoingo: Investigation likely impossible because fat fuck doctors would lie "healthy 600 pound 23 year old" when heart attack, etc
BingoBoingo: Kinda like how US jooz will become people of color when Petrus gets resentful and father's their daughter's children
deedbot: eplogos voiced for 30 minutes.
ben_vulpes: > Con una mentalidad Socialista en progreso << ahaha sina is this yours?
BingoBoingo: OMG elitist! What about all the not cherry fruits like nectarines and peaches!
jhvh1: shinohai: The operation succeeded.
BingoBoingo: shinohai: Are you sure this is new? Sounds familiar
shinohai: Maybe so ... I am quite sure the EFF lawsuit mentioned within is recent. The date seems to agree.
mod6: cherries sounds good. is there an abundance of fruit yielding cherry trees near you?
mircea_popescu: in other ghettos, gang of porto ricans down the street is throwing a PARTAY!!!!
mircea_popescu: you've not seen something like this, 100% 20something dudes in shorts and tshirts looking like bitches in heat won'\t fuck them.
mircea_popescu: and portorican music is apparently made by an ashkenazi gang of elevator music composers gone rogue.
mircea_popescu: cuz they dominate muzak amirite ? lord's of tin alley ?
deedbot: alex__c voiced for 30 minutes.
deedbot: photoelectric voiced for 30 minutes.
sina: that was a fun read this morning
sina: a ukranian lady and her husband are minor celebs for fighting against the russians in donetsk or wherever, Ukranian press loves em
sina: Chechen assassin poses as Le Monde reporter to try and kill them
mircea_popescu: and putin is related to this because russian hackers ?
sina: the lady is a badass and has a gun/blod clotting agent, shoots the assassin 4 times after he shoots her husband
sina: its NYT so Putin will be mentioned in everything, but Ukranian intel says they have no firm evidence it was the Ruskis (in the article)...of course it probably was but that's not the bit of the story that's interesting
sina: this is my fav bit:
sina: As they drove, Mr. Denisultanov-Kurmakayev asked the pair to stop the car for an interview and to sit in the back to receive the gift, which he carried in a festive red cardboard box.
sina: As the couple sat in the back seat of the car, Mr. Denisultanov-Kurmakayev said, “‘Now, here is your gift,’” Ms. Okuyeva said. He opened the box, pulled out a gun and opened fire on Mr. Osmayev.
sina: massive lul, hide the gun in a red box
sina: mircea_popescu: do you ever sleep?
sina: I just mean you're always online
shinohai imagines mircea_popescu sleeps like parakeet, with one eye open ....
mircea_popescu: speaking of which, do you know why rabbits sleep with their eyes open ?
mircea_popescu: only got so much skin. if they try to close their eyes their foreskin retracts.
sina: I demand a reference