Saturday, January 24, 2015

"Double Strand" text security available in "CuttleFish"

Want to earn 1 Dollar? Read on.

Project CuttleFish now has an implementation of the "Double Strand" or Scrabble Bag algorithm described in [Updated 1/24] Defeat n-gram snoopers with a Scrabble Bag.

If you don't feel like reading up on either, here is how "Double Strand" is implemented.

Short version: Shaken, not stirred.

Long version:
1. Some pseudorandom text is appended to an original text message.
2. Every character in the combined text is assigned the number of its position in the text.
3. The "map" is sorted in alphabetical order, changing the sequence of position numbers in the process.
4. Using the best free random number generator we could find,  AESCounterRNG, without bothering to look for the unicorn Fortuna PRNG, the characters and their matching positions are grabbed "sort of randomly" and saved into two separate files. One contains only the random characters, the other only has the numbers. Think of it as a zipper which you split it its two strands...
5. To reconstitute the original message, a user needs open the <message>.txt file. CuttleFish expects the corresponding numbers file in the same folder as <message>_numbers.txt and will open it at the same time.

To send a message secured with "Double Strand" to a recipient, you need to send both files. Send them separately, maybe even packed in an additional CuttleFish "envelope", and your unfriendly neighborhood hacker or your friendly neighborhood government will spend valuable CPU cycles trying to read your message.

So, for the fun of it, reconstitute the "Double Strand" message below and earn 1 (one) US dollar if you are the first to succeed. Shipping and handing of the dollar is on us. The message is not encrypted at all, only encoded as BASE64 for easy transport.
Of course, you are not being given the file with the character positions.

 wCFsNMQHUWyGMrbiNS8DS-JsXjxwKHZDk0iFSs2Tz3w7S7y6gBwJd8-Rz8NCtSSxhUCZwbMF7zSCkIwwqw7ZSKGKkF2sa60rmCQw
S7bMwnDuSpB3fOzNsWwUBUD8Ow2FDGzlO1Il8TsDOClYwDxwfFwKogCbwalw1WpIgwD-8+5plewCD3sEvw+DpK8KIaO88MLnZcclo
CZCCpkzM-MRxEE4dLHlsdwm7vmCHVYJOnsDEwwWAwKNDhMlOOsCjK6BAzx-DrqhNwXSwlKCyMT6OhITYVwwX8KfsczM1btIwDwnMj
wpXB0ZS1utESWlDr6riSKvpUiL3kWOvrsqaTH/qJT0bdR2RQkOacCJkMl2EGKD8MjYVEUnrKKOZTabD/lBjDDsHRvGkgvvKg5XVHj
4CHKIEasTddFVmlwbfSwrMuwMCKlC5IfCmI/EPySabKbriJvIO6IwYQ6pgwC5+fMbbXVonED1c4HGY-YEwY/EwMcCiv6GZwLcOicJ
pDOjJj6N2SD9ppBnwImOwtUs9DJB-2hTG5f-J1WSjXdYftgZnP8GD4EsxaKsTilGTD58chsbJsWS0WEC8OCFom-wIDqpwCSY34C6Z
LsWO8wc1vhDbsKIbKfwwCKrrkssCkthOrcN7WC8OqGD7KgJxcU8lwIwCpn7txCknVGSOCDcDoObi-EKDlxsKONpSSmBscVSRclPF/
7FwDNwuCDdyMDKvxXts7ZDuhb7Itwx5cVo9wtwOOpU3w/CIC6ESbOEraDMMVbjr488Hdznl3pxgniJG/wjDdlsLgH4wwpMXxbl2nw
DVC1ODBNEt6aarJrLS-bjgD4wIOMhMcUMSmZcowC7DO9wMwsOscrg9McXXDRjIjUK-xBMG-GDmCCjONiAmwjjIwOM2xKH4KMCwZ4C
7yjwWDKbKXiwIwOjRPwXdhuUC9ksSY8jgDs+D8CDMFM8wHr6mpchnDI98xX2EZson7OwJKK5zhwgClhnUpxgplDDo71BNcGcGyDww
DlODNCqgS8MDZGUMSJrTabXC5MwEwU7wLVDMKDODQoOwg3Mzrq47mlJhNCCsqOKht2KHBktwCbroLwugbooGXEwDbdkzzPwczxO5n
skbM-bD5Bw-Q4ooRnDhOM3cC5lPcUcjI8wdcwJbVrSg8-lSH5QpCrwKQtllgsGxxrwwvw3wRK8VG60OltwECmEDrHE0/gjG-jV2jl
c7GEKtm4zL-p2M4SYD8TTPx5gkWlSNXcd9d-/MEcRZKtjK4wFwHXzcjCLIcgYRGHDOuwmdG/7wt0hUlXSq4wstESqbLYgrwriCr-H
39WGLzFKMFCccvaqFOGwg8sExMBDin9RpODfPpjgajSXbCcZxoj/SCnIwzMSzqwEBpb58NbMwcNZ-IiqWNzEqEkNgDO-MColwwowi
-swmOKpxSPTuRhGkoD3DcJvwwIcs+LueiaArVSjgBcqDOaC5Ccfw-x-aKpBwDC5w15KIsCMqfOcvpnC4N/M3cGDKib/cTbSMjsDc8
MCD0NOCwmwlYBY5qSagqEDS8cKwShKw-nP7UTOVGwswm8f6DeRDeO-OXbDlGqMlvlqOwK6jEWMhopgMSU2sbHXXvTKmDWeMeN97qF
CECU7b4moC-h191nKIEx0sHSO3OrCsIXlI8juOgKzn32kGLmOvEGl2TRSOGDOEugcwvjG4wtudPEowBrSNjBs3xqzCxGEpwTfcZKb
M28kxcxmfcdMHxZqC8KvCg5Gfs4mhmrrIMEjWQfkcvlaVOx9ZCX3ggCicMBcB6-CyBcjLXsSK-8sV86Ys5BwbsubjwvwYKOh78Oo8
ScvsGwTTOCpDSEw9G2yj/SkTZIlsYmwAxjsTxTprdwsKrsxsKhCVpDw6VhIqWpaKygwf8OwiwTjPcMhrxZtd5i9-mZyO7smL8wfGO
Mwmw7KpsBDxw7wKCsmDnE44VIkK-E1T3oDDDTIgwmS1GwFpy2cgRwDDvUnWKvYEGGDk4MHocDs8wZKIC1hjILg81IbMwCYpMDw5A/
JoKKOJDwGDOvbw1BxDjloh7kYM5er7h9OwpCwqNdsvw2mZCMovwJwlgjwKwpz6lbZ2ErS4uuHD95MTRCSCDcBEH3viw30BwGMYCJf
KpZWw9vTxDzBruWr0vcGfvjCvhVjwwhM1D5OWDIhM45m7sxp2DC/WJwu3EcZIT8KNIEw8DCRXD8pHwgUwJCwr/CMBwwCdw6w73zNH
spJKjccMwG-MOgdwODJwlTcMaoxaqEwwxs3fIOZMICSyu7Cg4OMpwfDKKGOCFSksC8j3WHhXKnwYHSviIGSaSCXKpOHZiETTsrNCE
7W-cDEUldkB6XkBZPQLD00jvtjjVTzELcjcb/7dZIcD8DIwrkDMxH4wDIDSSrKB3J8kZidK8KwKwQDbaSuwGs10IcEGw7MgSwYlK8
8OgjwbrcxfTKsrNcsElhdpIDDDw8vw4-Ll3bZebtmOKzmiG5cbMb8CNats8ymxVnwbb4JBwOdE219BCKXdVD2ZMV-wMZhOxFGbBXE
w8CHtsSKCpEwlVwyWZco3UMrKcDCrrt6Jw6wW8Cw3MOXSCOmLxNbZQ-OKrwcvOnFdKl2dVwcCZg7KkwJhWEIIc5ZIoTicEqcSBJbJ
vhbbR4qCg49WvIGX5XOiCGKsKSZbE+OEzVljlkw4usbKC2KpOL0CeUFWyzMhlMrmMCwKKGx-XHoD/wMYdjlwKD-OkXZ2nEcCEg6po
EYg8HCEFCwjaSkqScusYqBKKW4pBnyqwKXDh0DrjXBqz8UccJrSi24m3DnC7CuvciV8phcZ1S7Om88kJh8C4fkorLbPbb68Gs8xD7
cq1Dc3TusxJQrasDsYpVtTmKW7HP35CDbM3cmkxsgw+o-RpDrMmII6wgEiDSzM8RsZFkSUHCCq60trIXsSOs2cJ8sWgDZwceMeiam
5c8K4sFTtOGpO5yhTCvVwDKTgOJ4wK7QOKB-wMM2NpDQFjp1sqBbRSRV9bcrhWHZw9amKdQDOpQ7GXnqKIplYadD-K9Ofc8sNrsqv
rPjUa087mWDouEq4O2ZO7cCRDK9D5bwdb54S4BgcDtMg4Oc8Vn4No6oTEKIRCDFw/Cs7sXE3EwrnbIc06CpIzjGOhhhscqK5swwiO
KR3qDrIRw-yvKCOcEpO-CfO88XDrwqwIwlwDVfcOFpHr4bOySsK9bvC56qZDS078gc8lGSTFMCOcO7oW4/DG63Oh8dwwmKcvKnCoz
OSJ0Ls-Kmsc8wn/s-4OqSAKqCJDHnw34Dww13iWOwwJCcyHUOw6zROKKPEeluIQrjIo/EShnIhRbqGZs69dPnU8k8uMsSOUKlpcpK
CMMVDc58-IpSwGouvrK-DCEEOCvJ/SmcDS7khYD7xK8UIXFwlD0-DrUmyIfwYvg9fYmXc5IsLexjOqPOMtsCMSSOMrMmGbbhOhxCp
4wLCwSDXM2DCCwlEScY0t8DQNODRFCoCqnDyPIJISSXpUSE1MQgCD6vqMVj4pvOOgN0MOqYnJwcw8mByDwsICw7ECcGSOgGwcb8tU
Fiiw6CxzbTnC6UmpO5CirdFwYYMoSSVRqSd8C0DwSQCKk7OEFC9GSwxocMwSk9a6IKb9wZGWtzo67GPJpj8zvwSgyToCMMp3gH-C6
KcsaDT1FH6DPoDn8dDmasScMo6EblwMww7rgBFwQmC18RPOD7JsC5sSsloMxmCs3G5hEzwCcSZKqwKKmsp8K8GVL-EjraCb185Ktm
DwCFGGi258sKTQFIOliygo/jdsOUKcGMwrprwcKjDsxZPUzbwXIWhctSIcgWogHG47XwCKVOUxh3MitmdZLKtOg8s5UKSDfDqqcuJ
CMStPuzq-B+fC7VE7tXCiIcCH4HXKCViK47srMbdUVIiNgdSzTOlr0S58w5JcC5cDmUvZRfjF3lIwpqSqolbciwlIgcciBOCwTrHy
pw63swrcw8flE98vYkiKIVZCkH2RClycKwuaK-mOSVMTGjBzcKrM4ntJ7cqkDGxT2p5LDwAj49wY-jfSzDMgPtWZuZ-oIGahSl1oG
PDYgohKGxw-DgqlIG2bMrwwmwMMcSK3wxHs/DsOTwtZzL3SKKsC0wC/C6Wxl1BKSqxqEqGkp4ytDwOxGlsvKgz0TDNOScsKslV3b0
7vZwnMyxDooOswSX4hH32I1OiMlI3CvUFvVcKZqM84/ZJxwxwwUcbpFGXIc7xI7whZi7JSHeTCUpwMzomvJsE4ivawQ1bqo5qCOMB
apIMwZPj4wBAgxvzczIEImvgKD1vSrmxliMfuq/rWOnGDiw30pDCBDGwkcsarrFM+zTz3gCYwyw5V+78LOztLiKtZgL7sDkrFxZYT
pxSqXOM8PqVwwODMI0PQiEI2XCwMpr8jlbFKCrZOcdcw7zwwOpmoTOwC9aK0xEylBWlC6CqcCWkrwjoMKhkTaOqwOSO8T-9ScSX3V
CwGmOlzFdDKIZIrh9q-1Cwnj/QGQBDA5sKO5tbE7MdDKMVuc8KnZWb7obwwIGlM02tIQvCX3DExKCH4cOWqIgiFO2Gkmvw8CG-5ww
8SSVAocl9sMWkIStmnb97sH0C1nsVK3HqGgHGr8TO/7rxWDF7ZiqVJl5ixvpBwFaSF3oSxcONC0Z4KgsrIanjswwmwy2oEJK1Xp7M
wocPcB-N+w/-OwwsD/BUrq00lZ8MinBCB6x0ipFM0pDwCFwoDKlZfn-KDhnyaBKDLXPsGPIc-wPmJamPC8PnsiLpdwFGnD8r6w8Gj
sVKB6hFwczPE8nKpM/nc6/nbs-sCXlx7dvI-d8/s8sQYwrGKlDc47-qKKCDc3c-rDwHjpKHub-YNeLB9i8wDDEf/Ugym8dIie7iKX
1-gwvKGbJDKIn4E/8cXLwKjFoujqwoJPCrHC6SwxhUFcjWStcbOuaXVODc8p8oXwwKhZuvP3xMDlk9Mt8CjJIeKMDJR7CMv2grE8K
bw3MOlY43x-q8MCbKwRFCrCBwwsfs6hKSSq56OKgpw4ROoZ5sYKGDEt7bzVk6SQbQwkwInEgM-Ts8LUCO0EwnO4jJpB8prsXsiwOW
eJkpDG/xOwYwMwH9DDoDHwfm6rMgxDCDKwOlTjowM6wpdXvnPK3-P3pMP4OZyhMlJbMw2vgJpDmrxw4S0MEFWHeCTDzqXvwTMSwwj
Df6dOT82S6TDMOzWNgMCBLCAejUbcM6VwVsrYMDI8DOomWpjOwDFqBDYkUfOSa3l3mVKOEfxkI138rxEiTDpKo61HlOksTwg8BSJO
Ehr064BT4P1q0cVkH5uKQiYp8us9-C-O6/bCObSJTciwDKsXbw/lVOptokgBISKjxbWzNk-25DLMCnO1bkK/JnLwwclVjwsQBDzkj
ew-uJCMDXEITTKwwv4fgg7zqOCnmJn/QHKCXwweViWwCcpDDv8H9cFPzuDRCi8G7nl4I/vWu18YrabdKKPjqmOyrHmqKczhGODYbi
hqIT/KbD5wCC8wlNVxSl1CjzzPb8cyKjcKhwF86hnyUiKz3ryowKOxxo3ScdGJCMusAbpI5DUgHccQoqswQlw8SkclfKnDSLqOMpd
kgngzJKoMhZXuuOw7OHZw94EYrEG8mMVm-jsos596eIMl6NlwErDwapwMxxmwImgCBlBjvqcUwM7KDyPQnklIgCLwbiFgwwOiv9CK
OcOVjKb33ruOOCqPSCoVvnsMn8EKbCMtL7XeMFRrKnuXBzrlc5pHvR5ofSC7oGBLDnBtP-6wsT5L8vzDDwTGZ8KOli5iSc5-JgjD9
fMrKmmmo7CKMIWP6Dcqw4OwDIhtgQErDMJwyKiORwBDZUpohi0JKcQ3hGcM/CzQIdiCC7GE6ZOKTPDYGwKEAmPwmHj-tPbwnWKJZU
hWuyKxtBQp2wcCCDqQKqUZsIEKgjIM2i83Q8DJHMxaKOb6R1C1ayg4wGw1OA/CtasD4VpuBRWI7ODQEtW2zS3Mxu-DKCOKdMfw5WF
Cnv8sUgwxFskg0RzXCTEfuwV7BMK5xSxZhww4ZOgKibJrfW1JrcXzD8wsb4O5rpdMCgPdGjHDsK+KdMrwsr7dlhObC2DDWChMOjKv
TYxmsKHDSlEhC4oDlMxjER-7MrrpXvTK3KLIEgvw2ICh9kSd5TwuhGRjwr4jmKDKckfnOIfDwfpCvxxOhnKCv5DHO5jz7j07DJsYq
-D4ZbnqSxrsp+288nhKno83WKC7TvUXF4tl-wDODhmz6sqz7D-nPzT6-l4xEwnLFcI8CPDwUDWZgZlq1RmrjNbU80sDOEcxxSHDfh
hdPxc8Cv17KpEOSDnoCwSwvdAKxC2d/cUqoxcsC-COzEwcSWBEYjXRxQOO6iK5SqM54hc+wwCgW7DKsIDw4OaCCCDRC4MxbwisIKC
lQx5vbM+cYwm83lbR4MxnlrqOHCedhUfbrcXErVkYvDLuCRImDKG07acnoCjScwEE8KDuoPSTqLKmHEKjnVtbcxlwEdD5gOKL5XSD
5DsjyS6oLKnoKg4jnDpkmdE/PNgECmmMsjBKc3jDdKGENIwcYPOalyrt7qGVOqrm4tqlpILKDsm7Dw9H2XK7VrKsEkgu4r5IDDDMU
OSvFNCDJSM09cMp-Ipw2DD+sgjXKkDwcDx8wwfV/EwL2-MwZROxzjTEoOVwGvhS3bXwoD9YqXU-pUXMcMh4KT5CCDw0RO6sG1rBLO
iDYTCRsAE/gJCcCkjKbBXOslwZwkhSHsO5HrZOzOOwsI2lnZjr/7KywexDKbwC8CDMxjo5EU8OpxIDWZCUyFDKFkKC8SzsPZx5wcm
w4x74BwIIqGIrHQUsafrnp8xpwjcwmxZDStRBkq5CSNfwZYIuMpBIgyDYw/wrKlp-2DkHD7kCDqsS6CDoyv2LcBOPtpnw2RDSaPxa
SMDRcSwJjEO9ecsvCvsJKhD0qHnuyOcwiLUCS65xgwcMgFMIDDZ4QySuCwnUGIXnSbSwhOvnZMz5wpPg8jDzdsIqSwmKl7-dguXni
DOwk9LEh-hmlJ0XDICc1-DfKUrLMkhOEw6bVLJO15WZPL3VsiPOchwydOjMypVcgiS0jDXYVvtHMXJoMxMDfwpD5px/Ud3Gqg-hhS
rDfwrXiO-Cz5mswD6IHfmDCwyVlI2F8chKwxbmk4cxTWZ4c1r6tImlmhgH9sCcnsydjEmOjiDq4Jwr8wKPKU3lCKjUb0SsHEnJNOn
FDMqsQShqIwlCwwC8COV6xCjxUe8l71PEmpCUwKCNmCmIwEOOCOVwSlOrKbWOK3dTrxDbNKMUfdglpI8cwIJICtlmgWuCmVDvjxkw
cOOxppDwkOXOnlOMHJKLBQSjwC7dKrwKgzjvpws/0gvycDC8OVBokibhcCCLkC0ZM1w8EKmwlMJM0XDwqFseCDmKJpvpz83aCgpqQ
I84xhswbOH3wOK8mQBwnDwSwqkNMrvU1IzGmwvkXltDZdDwOFCInr6r1EXxjaCwmGvjwC5wpsCIesdwwKsN3UGxqVjWJJSwM3lOCI
ONIs7sF4B1-WwWDx8aceus4wwONwwilzoCxNEKqbkl8wSV8igJOUmIDOhWNnsIjfFnwIlwdrwpwwEGzZCwL1wjYy73p3MHGrA2pcF
ncwnKnNjbwgtxgvmkOvRCOUX4Gbh2CwzqzrZy8cKBqwxVDwbZMw3DCHnEDPqDORhQciXGiL/DvdWKlhFsmjIuL+RCFx6mYlx5SSiB
uriobxp7EsDHF-EPb5rs9sMuOcYDwboOtvZ3OLwLMOCGEEi5ROjthswEdOKEhbwzDHa7-nkwOqCr-xuKptg7Kw7yzg/yQxOWiI3lH
fKYOrWX7Ol8TJIKE-SxsuxCJxbXwgbawPM1wmwm6nl5w5QZ6W7CIJuzK8gRxYdcjmY5c5UUKJfwqvA5WKQn8yXMcLDjxB3jW7M5c7
xSDwwHDJbKtGDwUb4hGlTqSMqdrDY6-hKxKowZgPfpswgEgdSSSqYwSVpY5fcbciaLIwc8K-qwHXzz7dcMDZ9v


[update] Yeah, you can offer me a job if you manage to break this. Otherwise, please keep the brain teasers to yourself.
[end update]

No comments:

Post a Comment