| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
|
|
|
|
| |
The logXPlusOneOf[a] + logXPlusOneOf[b] addition can go over 255, so
make it a uint16 addition.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Written while listening to Neil Young's Decade.
|
| |
|
| |
|
|
|
|
|
| |
* lib/str.go (AlphaScore): Rename to...
(AlphaPunchScore): ...this.
|
|
|
|
|
|
| |
* lib/str.go (isAlpha): Rename to...
(isAlphaPunch): ...this.
(AlphaScore): change isAlpha call to isAlphaPunch call.
|
|
|
|
| |
* lib/hamming.go (genKey): Remove function.
|
|
|
|
|
|
| |
* lib/hamming.go
(KeySizeWithMinDistance): Add argument 'bs'. Use first K bytes and
next K bytes of 'bs' for 'p' and 'q'.
|
| |
|
|
|
|
| |
* lib/blocks.go (BreakIntoBlocks): Fix typo -- 8 -> keysize.
|
|
|
|
|
| |
* lib/brute.go (XORCrackSingleKey): Simplify function; use FillBytes
and FixedXORBytes
|
|
|
|
| |
* lib/str.go (isAlpha): Add common punctuation.
|
|
|
|
| |
* lib/str.go (FillBytes): New function.
|
|
|
|
| |
* lib/xor.go (FixedXORBytes): New function.
|
|
|
|
| |
* lib/blocks.go (TransposeBlocks): New function.
|
|
|
|
| |
* lib/blocks.go (BreakIntoBlocks): New function.
|
|
|
|
| |
* lib/str.go (AlphaScore): New function.
|
|
|
|
| |
* lib/str.go (isAlpha): New function.
|
|
|
|
|
| |
* lib/b64.go (stripSpaceChars): Move to...
* lib/str.go (stripSpaceChars): ...here.
|
|
|
|
|
|
| |
* lib/b64.go (Base64ToBytes): New function.
lib/b64.go
|
|
|
|
| |
* lib/b64.go (index): New function.
|
|
|
|
| |
* lib/b64.go (stripSpaceChars): New function.
|
|
|
|
| |
* lib/hamming.go (KeySizeWithMinDistanceIter): New function.
|
|
|
|
| |
* lib/hamming.go (KeySizeWithMinDistance): New function.
|
|
|
|
| |
lib/hamming.go (HammingDistance): Change type of arguments to []byte.
|
|
|
|
| |
* lib/hamming.go (genKey): New function.
|
|
|
|
| |
* lib/hamming.go (HammingDistance, setBits): New functions.
|
|
|
|
| |
* lib/hex.go (ByteToHexStr): Move around.
|
|
|
|
|
|
| |
* challenge/c05.go (C5): Change BytesToHexStr call to AsciiStrToHexStr
* lib/hex.go (BytesToHexStr): Rename to...
(AsciiStrToHexStr): ...this. Change argument to string.
|
|
|
|
|
| |
* lib/b64.go (HexToBase64): Use hex instead of base 2 for the second
AND to get the last 6 bits.
|
|
|
|
|
|
|
| |
* challenge/c05.go: Implement challenge 5.
* cryptopals.go (main): Add handling to run challenge 5.
* lib/hex.go (BytesToHexStr): New function.
* lib/xor.go (RepeatingXOR): New function.
|
|
|
|
|
|
|
|
| |
* challenge/c03.go: Implement challenge 3
* cryptopals.go (main): Add handling to run challenge 3
* lib/brute.go (XORCrackSingleKey): New function.
* lib/hex.go (HexStrToAsciiStr, ByteToHexStr): New functions.
* lib/str.go (FillStr): New function.
|
| |
|
|
* Makefile (fmt): fmt lib instead of enc
* challenge/c01.go: Use lib instead of enc
* challenge/c02.go: Use lib instead of enc
* enc/b64.go -> lib/b64.go
* enc/hex.go -> lib/hex.go
* enc/xor.go -> lib/xor.go
|