home.social

#cryptopals — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #cryptopals, aggregated by home.social.

  1. Struggling with implementing AES for #cryptopals twice (because I got annoyed at bugs in my code and decided to instead start over using ARMv8 A64 cryptographic instructions like someone would do in a practical and secure modern implementation) has me appreciating AES enough to feel motivated to read most of the historical literature on S-box design and more broadly designing algorithms for avalanche effect

    Incidentally the amplification of a small mistake is a lovely illustration of that

  2. the cryptopals crypto challenges

    prompted to reshare via thomas:

    This is a different way to learn about crypto than taking a class or reading a book. We give you problems to solve. They’re derived from weaknesses in real-world systems and modern cryptographic constructions. We give you enough info to learn about the underlying crypto concepts yourself. When you’re finished, you’ll not only have learned a good deal about how cryptosystems are built, but you’ll also understand how they’re attacked.

    https://cryptopals.com

    https://alecmuffett.com/article/109631

    #cryptopals #encryption

  3. Решение cryptopals. Часть 3

    Завершаем решение cryptopals . В этой части рассмотрим блоки заданий 5 и 6, которые посвящены криптографии с открытым ключом.

    habr.com/ru/articles/804905/

    #криптография #криптоанализ #cryptopals

  4. Решение cryptopals. Часть 2

    Продолжаем решать задания cryptopals . В этой части рассмотрим блоки заданий 3 и 4, которые посвящены блочному шифрованию, хеш-функциям и генераторам псевдослучайных чисел. Первая часть

    habr.com/ru/articles/803077/

    #криптография #криптоанализ #cryptopals

  5. The third step in Cryptopals needs you to detect English text, specifically the immortal words of poet Vanilla Ice.

    I think I’m seriously overthinking this. I’ve got one that works for step 3, but step four is “find the English in these 370-ish lines of ciphertext. And I’m not getting close.

    #cryptopals #ciphertext #frustration

  6. The third step in Cryptopals needs you to detect English text, specifically the immortal words of poet Vanilla Ice.

    I think I’m seriously overthinking this. I’ve got one that works for step 3, but step four is “find the English in these 370-ish lines of ciphertext. And I’m not getting close.

    #cryptopals #ciphertext #frustration

  7. The third step in Cryptopals needs you to detect English text, specifically the immortal words of poet Vanilla Ice.

    I think I’m seriously overthinking this. I’ve got one that works for step 3, but step four is “find the English in these 370-ish lines of ciphertext. And I’m not getting close.

    #cryptopals #ciphertext #frustration

  8. The third step in Cryptopals needs you to detect English text, specifically the immortal words of poet Vanilla Ice.

    I think I’m seriously overthinking this. I’ve got one that works for step 3, but step four is “find the English in these 370-ish lines of ciphertext. And I’m not getting close.

    #cryptopals #ciphertext #frustration

  9. Решение cryptopals. Часть 1

    Часто при изучении криптографии делают упор на теорию, оставляя практическую часть в стороне. Упражнения cryptopals — это прекрасный вариант подтянуть практические навыки. С одной стороны, начинать можно с минимумом предварительных знаний. С другой стороны, затронуты все важные темы на примере реальных атак. В этой части рассмотрим блоки заданий 1 и 2.

    habr.com/ru/articles/801805/

    #криптография #криптоанализ #cryptopals

  10. Got excited this morning and started a new repo for cryptopals.com at codeberg.org/Taffer/cryptopals

    Going to do Python and C, and try to get better at Go and Rust, and maybe finally learn Ruby.

    Odds are I won’t have time to get far, but it’s the thought that counts, right?

    #cryptopals #cryptography

  11. I was today years old when I learned about "ETAOIN SHRDLU" and cracked the simplest of cyphers. #cryptopals

  12. I think I have a funk-removal plan:

    * finish the #Godot 3.x tutorials I bought; they're getting stale
    * finish learning #Rust
    * tackle #Cryptopals cryptopals.com/ using Rust; I've started twice before but always get distracted, maybe trying with a newly-learned language will keep me focused

    Also, the usual stuff (#ffxiv, reading, work, family). Could still use 2-3 clones to divide things up...

  13. CW: Cryptopals spoilers

    I just tried to do the transpose step using small numbers (1 to 16) and KEYSIZE = 4 by hand, and I think I finally understand it.

    It’s just switching the rows and columns around. Translating that to C# is the next challenge, although it should be easier now that I understand the “trick.” #csharp #cryptopals

  14. Nice #cryptography analysis of the Meow hash function. This gives me a few ideas how to do proper debugging of the hash exercises in #cryptopals, something I've struggled with to the degree of dropping that set and the remaining ones.

    > As we will see, perhaps your toes would fall off.

    peter.website/meow-hash-crypta

  15. #Cryptopals exercise #12 is the first to crack actual real-world crypto and runs by a factor of 50 slower than the Ruby version. Quick benchmark shows that the AES primitive I'm using is 100 times slower. I hope it's not GnuTLS being terrible compared to OpenSSL. One way to test is to write an #Emacs module in C, except that the API only supports UTF-8 strings and vectors (the pointer holding kind). Someone already wrote one for OpenSSL, but it doesn't handle NUL characters correctly and mangles the data in inexplicable ways. I'm pondering some terrible workaround like hex encoding, but that surely won't help.

  16. I'm currently solving the first #cryptopals set with #emacs #lisp and ran into issues implementing the AES-ECB primitive. For starters, AES-ECB isn't exposed by the GnuTLS API. Not like this would deter me, if you use AES-CBC with an all-zero IV, the first block will be encrypted the same way as with AES-ECB. Check out the diagrams if you can't believe it.

    A more problematic issue is that the results of encrypting more than one block are not deterministic, that is, the second block encrypts to something entirely different from the first one. This is weird because GnuTLS takes care of not automatically mutating the IV argument for you and makes you do that work. Checking the manual again I've found this gem:

    The KEY can be specified as a buffer or string or in other ways (*note Format of GnuTLS Cryptography Inputs::). The KEY will be wiped after use if it’s a string.

    Well-intentioned for sure, but surprising. The workaround is trivial, create a copy of the key string with `concat` before passing it to GnuTLS.