The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,839 other subscribers

How is NSA breaking so much crypto? “weak” standard primes for Diffie-Hellman are being widely used and take NSA only ~$100 million to crack

Posted by jpluimers on 2015/11/19

Interesting: a few quotes below, read How is NSA breaking so much crypto? and the full paper Imperfect Forward Secrecy: How Diffie-Hellman Fails in Practice for details.

The key is, somewhat ironically, Diffie-Hellman key exchange, an algorithm that we and many others have advocated as a defense against mass surveillance. Diffie-Hellman is a cornerstone of modern cryptography used for VPNs, HTTPS websites, email, and many other protocols. Our paper shows that, through a confluence of number theory and bad implementation choices, many real-world users of Diffie-Hellman are likely vulnerable to state-level attackers.

.. there was a very important detail that got lost in translation between the mathematicians and the practitioners: an adversary can perform a single enormous computation to “crack” a particular prime, then easily break any individual connection that uses that prime.

How enormous a computation, you ask? …  For the most common strength of Diffie-Hellman (1024 bits), it would cost a few hundred million dollars to build a machine, based on special purpose hardware, that would be able to crack one Diffie-Hellman prime every year.

Would this be worth it for an intelligence agency? Since a handful of primes are so widely reused, the payoff, in terms of connections they could decrypt, would be enormous. Breaking a single, common 1024-bit prime would allow NSA to passively decrypt connections to two-thirds of VPNs and a quarter of all SSH servers globally. Breaking a second 1024-bit prime would allow passive eavesdropping on connections to nearly 20% of the top million HTTPS websites. In other words, a one-time investment in massive computation would make it possible to eavesdrop on trillions of encrypted connections.

NSA could afford such an investment. The 2013 “black budget” request …  shows that the agency’s budget is on the order of $10 billion a year, with over $1 billion dedicated to computer network exploitation, and several subprograms in the hundreds of millions a year.

… However, our proposed Diffie-Hellman break fits the known technical details about their large-scale decryption capabilities better than any competing explanation. For instance, the Snowden documents show that NSA’s VPN decryption infrastructure involves intercepting encrypted connections and passing certain data to supercomputers, which return the key. The design of the system goes to great lengths to collect particular data that would be necessary for an attack on Diffie-Hellman but not for alternative explanations, like a break in AES or other symmetric crypto.

Since weak use of Diffie-Hellman is widespread in standards and implementations, it will be many years before the problems go away, even given existing security recommendations and our new findings. In the meantime, other large governments potentially can implement similar attacks, if they haven’t already.

Our findings illuminate the tension between NSA’s two missions, gathering intelligence and defending U.S. computer security. If our hypothesis is correct, the agency has been vigorously exploiting weak Diffie-Hellman, while taking only small steps to help fix the problem. On the defensive side, NSA has recommended that implementors should transition to elliptic curve cryptography, which isn’t known to suffer from this loophole, but such recommendations tend to go unheeded absent explicit justifications or demonstrations. This problem is compounded because the security community is hesitant to take NSA recommendations at face value, following apparent efforts to backdoor cryptographic standards.

–jeroen

via:

Posted in Algorithms, Development, Encryption, Power User, Security, Software Development | Leave a Comment »

How to aggregate (count/sum/average) cells and ignore the #div/0! ‘s – via: list of functions by Excel version

Posted by jpluimers on 2015/11/19

I bumped into a #DIV/0! result for average functions when processing large sets of data.

It is actually very easy to spot the error in small results, sets, but hard in big ones, as you cannot see the #DIV/0!

So there are average functions that can ignore certain outcomes. COUNT already does that (there is no COUNTIF), the others have a *IF equivalent, but not in all Excel versions:

Note there is a small SUMIF/SUMIFS/AVERAGEIF/AVERAGEIFS in Excel 2010 (not in 2007, and maybe not in 2013) glitch when the criteria are in a different sheet.

The seemingly easy workaround of summing columns A and B, then doing the division fails: it returns different results as it forgets to ignore faulty rows:

SUM/AVERAGE versus SUMIF/AVERAGEIF (click to enlarge)

SUM/AVERAGE versus SUMIF/AVERAGEIF (click to enlarge)

Leermomentje (techable moment comes close)…

–jeroen

via:

Posted in Development, Excel, Office, Office 2003, Office 2007, Office 2010, Office 2013, Power User, Software Development | 2 Comments »

Stack Exchange – Android Apps on Google Play

Posted by jpluimers on 2015/11/18

I missed when the StackExchange App for Android was finally launched, but I totally agree with Paul Lammertsma:

Exceeds expectations This was a long time coming, but it didn’t disappoint. It’s a great aid for a regular on Stack Overflow like me!

–jeroen

via Stack Exchange – Android Apps on Google Play.

Posted in .NET, Delphi, Development, Pingback, Power User, Software Development, Stackoverflow | Leave a Comment »

Universal Android ADB driver for Windows – koush/UniversalAdbDriver

Posted by jpluimers on 2015/11/17

If you ever need a universal Android ADB driver for Windows, then use this one: koush/UniversalAdbDriver.

I never noticed it was there until Koushik Dutta posted about a signing trick on Google+.

Windows drivers need to be signed, so what he does is generate a self signed certificate on the fly during installation, sign the driver install it, and drop the private key of the certificate.

Each installation has its own key, Microsoft is happy, and it is proven the driver signature mechanism in Windows has a hole.

If you want to do similar things, then this commit is what you are looking for: Use a self signed, self destructing signing cert. · e8b78fe · koush/UniversalAdbDriver.

It isn’t rocket science, but not trivial C# either, so this is a great example of something that works.

–jeroen

Posted in .NET, Android, C#, Development, Mobile Development, Software Development | Leave a Comment »

Early Mac UI designers say Apple has abandoned many of its human interface design principles | 9to5Mac

Posted by jpluimers on 2015/11/16

I vividly remember the old design guidelines. They were golden.

Now basic things like feedback and discoverability are missing.

Source: Early Mac UI designers say Apple has abandoned many of its human interface design principles | 9to5Mac

Posted in Uncategorized | Leave a Comment »

Google Podcasts might not be the quality you’re after, just like the YouTube replaygained audio…

Posted by jpluimers on 2015/11/16

Google Podcasts might not be what you’re after:

Podcast producers that are not too happy, saying that Google Play is going to downsample and re-encode podcasts down to a minimal 64k of audio quality. That is not good news. – Joe C. Hecht – Google+

Source: I sure am hearing a lot about Google embracing Podcasts, and how it is going to…

So just like on YouTube, Google seems to play the audio normalisation game again.

–jeroen

Posted in Google, Power User | Leave a Comment »

OS/X – How to print screen in Remote Desktop Client (RDS) on Mac OS X? – Super User

Posted by jpluimers on 2015/11/16

The only reliable way to create a remote print-screen is by using the Windows On-Screen Keyboard. It even works with Alt-Prt+Sc to make screenshots of individual Windows.

Just run OSK to start the On-Screen Keyboard.

–jeroen

via: osx – How to print screen in Remote Desktop Client (RDS) on Mac OS X? – Super User.

Posted in Apple, Keyboards and Keyboard Shortcuts, Mac, Mac OS X / OS X / MacOS, Mac OS X 10.7 Lion, MacBook, MacBook Retina, MacBook-Air, MacBook-Pro, MacMini, OS X 10.10 Yosemite, OS X 10.8 Mountain Lion, OS X 10.9 Mavericks, Power User | Leave a Comment »

Inno Setup: Program Folder not showing up In Start > All Programs. I’ve been…

Posted by jpluimers on 2015/11/15

taskkill /f /im explorer.exe
del %LOCALAPPDATA%\IconCache.db /a
start explorer

Source: Inno Setup: Program Folder not showing up In Start > All Programs. I’ve been… (A Google+ post not archived in the WayBack machine)

It will kill explorer.exe, delete the IconCache.db, then starts explorer which will rebuild IconCache.db.

–jeroen

Posted in Development, InnoSetup, Installer-Development, Power User, Software Development, Windows, Windows 10, Windows 11, Windows 7, Windows 8, Windows 8.1 | Leave a Comment »

VidCast: Chromecast for the rest of the web

Posted by jpluimers on 2015/11/13

I know, friday 13, bla, bla, but this works great! VidCast: Chromecast for the rest of the web.

It works with: Vimeo, TED, and tons of other sites.

The first I tried is was a great half hour Devopsdays Amsterdam 2015 session “Leslie Hawthorn – Fear of Failing Fast: How to Avoid Sabotaging Your Success

The easiest way is to drag the VidCast bookmarklet button to your bookmarks bar once, then for videos you want to watch:

Read the rest of this entry »

Posted in Bookmarklet, Chrome, Chromecast, Google, Power User, Web Browsers | Leave a Comment »

Google+ post by Jean-Luc Aufranc

Posted by jpluimers on 2015/11/13

https://plus.google.com/110719562692786994119/posts/JTCQ9QSUvUz

Posted in Uncategorized | Leave a Comment »