This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
""" | |
31-round sha256 collision. | |
Not my research, just a PoC script I put together with numbers plugged in from the slide at | |
https://twitter.com/jedisct1/status/1772647350554464448 from FSE2024 | |
SHA256 impl follows FIPS 180-4 | |
https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf | |
""" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package main | |
import ( | |
"encoding/binary" | |
"hash" | |
) | |
// The size of an MD4 checksum in bytes. | |
const Size = 16 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[18:27] <trumanshow19> Would someone mind help iron out the | |
inconsistencies in my head with respect to purity in | |
Haskell. Statement 1: Haskell is a purely functional lanugage, S2: | |
Haskell is not impure, but... S3: f :: a -> a is a "pure" function as | |
opposed to a -> IO a. | |
[18:27] <trumanshow19> If a -> is pure, to distinguish a -> IO a, then | |
how do I describe the latter, is there is no impurity in Haskell ? | |
[18:28] <trumanshow19> The only opposite of pure I know is impure. |