T

Tobtu

tobtu.com · Personal blog · on HN since 2013

Personal site of a security researcher who breaks cryptography and password software, including Cryptocat, LastPass and PRNGs.

What HN saysHN commenters cite it for cracking password managers and exposing Cryptocat's flawed random number generation and key weaknesses.
24HN people shared it
16linked it in comments
8stories submitted
547story points
2 years agolast shared
2013people per year2026

Most-shared posts

  1. 1
    DecryptoCat
    14 people · 516 points · first shared 2013 · 276 comments on HN
  2. 2
    SRP Is Now Deprecated
    3 people · 18 points · first shared 2021 · 2 comments on HN
  3. 3
    Why No One Should Use LastPass
    3 people · 3 points · first shared 2013 · 3 comments on HN
  4. 4
    MegaCracker
    1 people · 5 points · first shared 2013 · discussion on HN
  5. 5
    Breaking a PRNG: Is It Called Xor Shift or Xor Shit?
    1 people · 2 points · first shared 2023 · 1 comments on HN
  6. 6
  7. 7
    Minimum Password Settings (2022)
    1 people · 1 points · first shared 2024 · discussion on HN
  8. 8
    Blackhat2022
    1 people · first shared 2022

What HN people wrote when they linked it

Strom · 2015-04-23
In my experience, most malware creators are pretty terrible. Even in 2015 it's common for malware to communicate with C&C servers that have classic SQL injection vulnerabilities. More specifically on the topic of ransomware, have a look at this gem [1], which uses RSA, but the key is 128 ASCII digits. Very similar to the cryptocat disaster. [2] [1] http://blog.cassidiancybersecurity.com/post/2014/02/Bitcrypt-broken [2] http://tobtu.com/decryptocat.php
dobbsbob · 2014-07-16
No love for KeePass in that article? I recall all those password managers being broken by tobtu.com or various users on Hashcat forums. http://www.tobtu.com/lastpass.php
bitsteak · 2013-12-27
That's a pretty amazing hyperbole from kaepora (twitter description of incident vs actual e-mail response from Apple). And later, Apple accepted the fix: https://github.com/cryptocat/cryptocat/issues/542#issuecomment-3055164… Kaepora is so full of himself, I'm not sure how anyone takes what he says or the apps he writes seriously. Glad that people are putting stock in more consistent developers these days (http://tobtu.com/decryptocat.php).
midas007 · 2014-02-14
LOL. http://tobtu.com/decryptocat.php On a serious matter, javascript (eg all browsers) absolutely needs to change to make the web more trustworthy. I agree with some of the Matasano points[0], but these are the minimum, exhaustively complete changes that would improve browser security: i. js that can be cryptographically signed and verified, a trust model and a browser security policy to enforce it. Think ascii armored GPG signature as a comment for the code it encloses. ii. js native extensions: able to talk to native code that was previously installed iii. js objects that can be made immutable (can't change them in any way) iv. js objects that can be made un-protypable (can't copy or "subclass" them) v. js properties that can be made read-only vi. js properties that can be made private (only the object itself can use them) With folks pushing to make this happen across all browsers, javascript theft of bank passwords and credit card numbers would be much harder. Crypto stuff like the Stanford library would benefit. References: 0. http://www.matasano.com/articles/javascript-cryptography/ 1. https://crypto.stanford.edu/sjcl/
zaroth · 2013-07-09
First, this is a great article showing the bias in Cryptocat's very awkward PRNG code. However, the off-by-one bias was actually the least of the problems with Cryptocat's random numbers... From reading Steve's write-up, the problem was that their keys were ridiculous undersized, because they called their own function wrong: May 7, 2012 (switched from DH to ECC): myPrivateKey = Cryptocat.randomString(32, 0, 0, 1); April 19, 2013: rand = Cryptocat.randomString(32, 0, 0, 1); myPrivateKey = BigInt.str2bigInt(rand, 10); June 3, 2013: rand = Cryptocat.randomString(64, 0, 0, 1, 0); myPrivateKey = BigInt.str2bigInt(rand, 16); > The bug that lasted 347 days was the confusion between a string and an array of integers. This made the ECC private keys ridiculously small because they passed a string of decimal digits into a function expecting an array of 17, 15 bit integers. Each character was considered an element in the array. So each of those "15 bit integers" were only the values 0 to 9 (3.32 bits). Also the least significant 3 bits are zeroed giving you a key space of 2*10^16 (2^54.15). -- http://tobtu.com/decryptocat.php See for yourself here: https://github.com/cryptocat/cryptocat/commit/a17bb1599463e0c079137d82… Even now looking at this code, for me it just doesn't pass the 'WTFs per minute' test... It still looks fucking wrong to me... Cryptocat.randomString(64, 0, 0, 1, 0) returns a 64 character string of…
atoponce · 2022-08-10
His slides to his talk have been posted. I'll like the video to the talk when it's up. https://tobtu.com/blackhat2022/
tptacek · 2021-10-21
Relatedly, a recent post on SRP (the most commonly used PAKE) and how it's worse in all cases than PAKEs derived from SPEKE: https://tobtu.com/blog/2021/10/srp-is-now-deprecated/
viraptor · 2020-06-15
> At least if you somewhat trust the reviewer we now know that it has no glaring problems and seems to be well designed. I believe OP was making fun of the review. Cryptocat was full of questionable choices (https://tobtu.com/decryptocat.php) as well as widely disputed security claims.
anon4711 · 2016-11-05
One of the problems I face when somebody comes along and tells me that they're now on Telegram, Cryptocat, Wire, or whathaveyou is that I might recall an issue but there doesn't seem to be a good up-to-date overview that answers the questions (1) should I trust these people (how bad was it; was it in their code or a dependency?) and (2) is it known to be far less secure than it advertises? (still?) I recall e.g. that Moxie reviewed Telegram's security, found that none of it made any sense and that its authors didn't know what they were doing. https://tobtu.com/decryptocat.php looks like the cryptocat analogue of that. Have the two projects improved somehow? Have some people joined or others left? Could you please also provide links for the claim that CryptoCat and Telegram are being used by governments to hunt down activists?
nkobeissi · 2016-05-18
I am the original author of the software you refer to. Before its complete rewrite (released two months ago), Cryptocat was based on a codebase that I wrote starting in my early undergrad and that was notorious for containing many high-severity vulnerabilities. The most important was "Decryptocat", documented by Steve Thomas [0] but we also had: * AES-CTR counter-reuse (2012) * Biased Fortuna CSPRNG implementation [1] (2013) To be sure, Cryptocat's substandard reputation was well-deserved; but all the same, I think that every vulnerability that did pop up was addressed responsibly and with full disclosure. Since then, there has been a major rewrite that I am conversely quite happy with. [0] https://tobtu.com/decryptocat.php [1] https://nakedsecurity.sophos.com/2013/07/09/anatomy-of-a-pseudorandom-…
DanBC · 2015-07-30
This is one of the bugs found in CryptoCat. http://tobtu.com/decryptocat.php
edwintorok · 2014-11-05
Reading about the history of CryptoCat doesn't convince me that it was written by people who knew what they were doing. Look at the RSA key size chronology: 768, 512, 600, 1280, 1024, 1048, ... http://tobtu.com/decryptocat.php
marshray · 2014-04-03
Go read http://tobtu.com/decryptocat.php and earlier sources before deciding he's being extremist.
lispsil · 2014-02-04
This is probably a good reason ppl stopped using it http://www.tobtu.com/lastpass.php Plus I wouldn't trust any browser plugin with passwords

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close