« first day (1480 days earlier)      last day (3698 days later) » 

02:53
@TildalWave I think it's because many of us just yell at @AviD in this room when we want something done. :)
 
2 hours later…
04:41
devs still approach performance of JS code as if they are riding a horse
 
4 hours later…
08:22
@TerryChia WHY IS EVERYBODY SHOUTING AT MEEEEE
@TerryChia I dont get it
@AviD I don't either, but the existence of an account called horse_js is awesome.
@TerryChia account? There is a framework called horse.js!!
Probably.
hey @TerryChia you pingponged me yesterday?
@AviD Ah, I got an answer from @RоryMcCune so it's all good.
re symlinks - always a bad idea, even on supposedly same *nix - implementation is often different. Git guidance is to never explicitly use symlinks (even if internally it kinda uses it)
@RоryMcCune not a hipster anymore, and DEFINITELY not a node.js-er... but yes, kinda
well actually to be accurate, npm is used as a repository. package management is usually something like grunt or bower or one of the other hipster package managers.
@AviD Isn't npm in itself a package manager though?
08:35
define "manager".
@AviD Tool I use to download packages.
yes, npm can do that.
but oh you can do so much more!
Isn't grunt more similar to make then a package manager like gem or pip?
I guess the analogous tool to grunt in the ruby ecosystem is rake?
meh, I wouldnt know, I'm not a javascript hipster.
which you clearly ARE.
@AviD Hey, I don't write JS. I just hang around HN a lot.
08:38
seriously though I can keep track of them. you need like a half dozen tools just to get it all going.
@AviD shrug I just use make for all my stuff.
see, what I dont get is - it's frikkin java SCRIPT, what the WTF are they trying to build there???
I know, IDEs havent been invented yet, will only be in 2065 that they become functional.
but still.
@AviD Pfft IDEs. vim editor best editor.
biggest editor best editor!!
@TerryChia surprised you're not using Atom.
@AviD There's a yo momma so fat joke in there.
08:42
@TerryChia biggest wife is best wife!!
ftr I am not calling my wife fat, I am referring to this:
You clearly are.
MRS Aaaaaavvvvviiidddddd
heh.
 
2 hours later…
11:11
@RoryAlsop you flag ninja
11:30
The hazards of waiting to pick up children from swimming. That's when I handle lots of flags
 
4 hours later…
15:16
user image
4
 
5 hours later…
20:11
any cryptoers here? /cc @ThomasPornin @CodesInChaos etc
Is using RC4 as a CSPRNG considered "okay"?
@kalina one for you:
user image
3
also, assuming the answer is "well, kinda-ish, depending" - then how bad would it be if it is seeded with a combination of datetime (to millisecond) and a basic math.random()....
(I know it is in the general direction of "bad", but I'm asking "HOW bad" - like "kinda bad, change it when you can", "pretty bad, fix it asap", "CHRUST THATS BAAAD STOP THE INTERNET NOW UNTIL YOU FIX IT"-bad...)
20:28
@AviD It's certainly not the wisest choice.
@CodesInChaos I figured that, inuitively. Can you elaborate, in lameman's terms?
Even if you drop the initial bytes (to avoid their big biases), the stream output is still distinguishable from random data after about a GB of data.
and, how unwise is it - "meh, not great crypto", "submit security bug", "CVE WITH A CODENAME AND LOGO"
closer to "meh"
@CodesInChaos hmm. they dont drop the initlal byte, but I also dont think its anywhere near that much data.
mostly things like a nonce, or a key here or there
20:31
One problem with RC4 is that it's tricky to use. It has related key weaknesses which can lead to practical breaks.
@CodesInChaos thanks.
for example concatenating a key with a seed and using that as RC4 key is fatal.
@CodesInChaos right, I know that as an encryption algorithm. I just ran into a system using it for csrng.
@CodesInChaos no, the key and seed are mixed in together RC4- like.
And CSPRNGs typically get rekeyed frequently to achieve forward secrecy. That might interact badly with the bias of the first couple of bytes.
@CodesInChaos "interact badly", as in keep repeating the biased bytes?
20:34
each time you rekey RC4 you get significantly biased output bytes.
okay, thats what I thought you meant.
though if they were to skip the first few bytes (they dont), that would obviate that specific problem, right?
Skipping enough bytes avoids the biggest issues with RC4. I don't know how many you need to skip, something around 1000.
@CodesInChaos oh?? I thought it was only the first couple bytes.
regardless, they dont skip any.
the bias for the first few bytes is biggest
though in truth their implementation of RC4 (i knoooowww) seems just a bit non-standard, so they likely have a different set of problems.
20:39
I'd say using RC4 by itself is only "meh", but there is a good chance that they misused RC4 enough to end up with a practical attack.
@CodesInChaos I think so. though I'm still not sure how exploitable it is, if each rekeying is only used for a handful of bytes?
how are the keys derived?
and lets assume (...) that there is still enough entropy in the output for the given requirement, even considering the bias.
@CodesInChaos no keys, its only for csprng.
but the RC4 key still comes from somewhere
the seed for which is math.random() mixed with Date().getTime()
20:42
That's doubly fatal.
First of all, the entropy of that seed is too low.
oh absolutely.
that was the point I started at.
And second, that might hit the related key weakness of RC4.
started pulling at that thread...
RC4 leaks some information about the key via the bias in the first few bytes.
So if you use many similar keys, an attacker might learn the shared part even if it has high enough entropy.
well the only shared part between rekeyings would be the seed for Math.random().
though I suppose that still wouldnt be enough to obscure that seed....
anyway, my point, I plan on submitting them about the low entropy and such - the question is, is the fact they are using RC4 for a CSPRNG enough of an issue for a separate issue, or just mention it as a bad practice in a by-the-by?
20:47
Which language is that?
@CodesInChaos uhh, errrm, ummmm..... java.script
/cc @TerryChia yes yes, I'm a js-hipster. shuddup @Terry.
@CodesInChaos its actually a javascript framework that also has a crypto function.
and yes, I already know the problems of js crypto. but still.
though for anyone who doesnt already know - this is brilliant: matasano.com/articles/javascript-cryptography
Exactly how bad RC4 is depends very much on context. But since they need to touch the CSPRNG anyways, they should replace RC4 at the same time.
Many modern browsers already include a CSPRNG, no need to roll your own in one of those.
@CodesInChaos yeah, what I was thinking.
do you happen to know how widespread that is btw? and how good the implementations typically are? /cc @ManishEarth
I think FF, Chrome and IE11 have it.
@CodesInChaos ah yeah, this agrees with you. developer.mozilla.org/en-US/docs/Web/API/…
not sure how far back they want to be compatible. whatevs.
@CodesInChaos thanks!
as an aside, I want to point out how annoying it is when people think that a bunch of bit-flipping games can improve the entropy.
21:33
oh fugg it. how am I supposed to take this framework seriously, when this ACTUALLY appears in a comment??
> // Again - DON'T BE INSECURE!!! Security is left as an exercise
// for the reader :)
3
21:48
Not the worst advice ever given in a comment, but certainly not up to modern frameworks' standards.
@StephanHeijl actually, sadly it is.
but "left for the reader" is basically a great big honking caveat emptor that they dont give a frig about it.
Somewhere there is a code author thinking "Wew - dodged a bullet there"
hehe
Frankly, I'm just amazed at the existence of a framework called Horse-js
yeah, like when they flip some binary bits in javascript so its "moar random"
21:52
Good thing nobody has access to a page's Javascript
heh
Oh wow, this thing even includes 'abstract airborne dressage' and 'horseless projects'
jQuery doesn't even do normal airborne dressage, it looks like I'll be switching
@AviD It's ok as long as you skip the first few bytes of the output after initialization. Not something to use in a new design but not a showstopper either.
@Gilles yeah thanks, @Codes walked me through it.
though "first few bytes" seems to be closer to 1000.... also there are bigger issues than that anyway.
ah, yes, I see CodesInChaos said pretty much what I'd have said
22:00
the source of entropy is still the biggest issue.
@AviD IIRC there's one bit in the first byte that's guaranteed, and there's a bias in the first few hundred bytes that can be a problem in some applications
I think they thought that simply using the CSPRNG (RC4 in this case) was enough to provide the entropy automagically.
<facepalm>
@Gilles I think its the 2nd byte actually.
but yeah, same thing.
anyway, thanks @Gilles.
I was in the same situation as you a while ago...
(probably not for the same product)
15
A: Evaluating the entropy gathering in a PRNG

Thomas Pornin"Entropy" is a measure of what some data element could have been. We say that we have n bits of entropy in a bunch of bits if those bits could have, collectively, assumed 2n distinct values with uniform probability (there is a whole lot of complexity which hides under the "uniform" term). To make...

22:03
ah yeah, seen that one again not too long ago.
@Gilles no, I'm sure its not the same.
at least you had the embedded system, respek. not some hipster-js framework.
heh
wait, is that real??
> hipster.js — DYNAMICALLY STATIC
makes you wonder
I honestly cant figure out if thats serious or a parody
then again that is true about most js frameworks
> April 17, 2013
is that 7 a typo?
22:10
> JS Frameworks: "It was all harmless idiocy, until one day..."
3
The sidebar sounds like a joke, but it seems like a serious effort.
It looks like Jekyll but more work...
@StephanHeijl effort... to do what??
An effort to provide people with a needlessly complex way to broadcast their every longform thought.
ah, right.
@AviD Lameman's terms? Was that a Freudian slip?
22:18
@TildalWave isn't that what people say?
;-)
Dunno, I don't listen to what people say :P
yknow, "explain it to me in lameman's terms"
layman's ... but ok
hehe
sounds almost the same :)
22:21
aaaaand which do you think makes more sense, in context? ;-)
none when you're asking about crypto
or either
how about javascript?
ftr, I know exactly what I was saying (and what the real word is). I'm just trying to make it a thing.
dont try and tell me that my way doesnt make more sense.
I know you know, I'm just bored
nearly fell asleep with full belly in front of telly and missus asked me if I'm asleep just as I would have been LOL
@TildalWave @tildakalina
I know this was asked a few years ago on this very exchange, but I'm curious as to whether there have been any changes
Is there any reason to get an Organization Validation certificate over a domain validation certificate?
Specifically, end user wise?
I realize that the OV certificate probably has more research behind it, but does this affect anyone looking at a normal webpage in their regular ol' browser in any way?
22:31
@StephanHeijl is that the same as an EV cert?
No, the extended validation has a separate category. I know that those show a green bar with the organization name.
Ah, great, that just saved me € 22,50 :)
22:46
ahh that.
23:04
@TildalWave You just cost someone a new Mercedes. I hope you're happy.
23:26
@TerryChia extremely, never liked those "gastarbeiter class" wagons

« first day (1480 days earlier)      last day (3698 days later) »