Stream Cipher Challenge
After close of the market I will roll a random number @FairlyRandom.
The random number range rolled will come the range from 10 to 90.
This Market Resolves to the VALUE of the Random Number result.
The twist, There are additional constraints which may be imposed upon the random number range rolled for the resolution of this market. Additional constraints have been encrypted using a cipher stream. The Cipher 1 constraint is a subset of the criteria established above and the Cipher 2 constraint is a subset of the Cipher 1 constraint.
If @FairlyRandom is shown to be untrustworthy source of randomness then I will resolve with an assumed roll of 50. This failsafe superceeds any additional constraints which might have otherwise been imposed in Cipher 1 or Cipher 2.
The FairlyRandom will roll will take advantage of all of the parameters that can be passed to FairlyRandom
Min,Max determined by market criteria, Offset arbitrarily chosen at market resolution, Verbos for the nerds
min=N to change the minimum value of the range (inclusive)
max=N as an alternative syntax for specifying the maximum value of the range (inclusive).
offset=N to specify how many rounds to wait before retrieving the randomness. Default is 2, min 1, max 100. Increasing the offset makes the result take longer to provide (about 30 seconds per increment) but can increase the security.
verbose=true to include full technical details and verification instructions.
I will not participate in this market.
Hints:
The stream ciphers used are not keyed. (OR the key state can be said to be arranged using an ordinal numbering)
๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ญ๐ฎ๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐๐๐๐๐๐๐๐๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ฝ๐พ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ญ๐ฎ๐ฟ๐
Obgu fgernz pvcuref ner trarengrq ol gur fnzr nytbevguz ohg gur frpbaq pvcure vf n aba-fgnaqneq vzcyrzragngvba bs gur fnzr nytbevguz.
Cipher 1:
wqkpbxgaapfygmuyogdsgtodwxiszqnwonrrwvkjuabpqwamwhjfmrsyxuledknleketzikfqkuytfsrxivnxqvnliqnbibeqdigymovhppxjqwdkkmcbwlpbcuilmgwvarfcnelyzogpexwqizcedsvcswjqxqkpgtcocowocuywqbugmdyzwejrakizbqermxrvijvqnxrevsgkferooqulzmehovmbacuthgiadguzcqnngtnqbdbckiamjcnonnesldrigrmqhuwjsdvocalxsxsjykdkqbtbfa
Cipher 2:
564203602001445030061272147645640414767431543317655072420043623566112335156727101363255612161253530241374743031537017004412335164271041700635643457022621337357016247357525747544642273546066110127634471054717471510251071674226413304277717473217344644462101151055265407454614361610545406050747624002341663125435575123014264621565240035524523430751063240537641530240726
SHA 256 hashs for later verifcation
d4c5b428c79c2a0f29b0885d9e1102a2b08f66ef43fdb1537848b01b2e0676dd
b22a82f1b7bb6c8e12e0074be78f29feae135ebe547e83e8e974fae77569e02c
38656329ecee937d995c85551e658d3667648c0366f6818903dda4927fb1110d
8d048c6b079298ee7245a8f6b85dfb9bb4da56c5b7ac70470174bfdcfe44844d
2f851dc992625d9cd9a685b9e0bdff6d2610633ba7e38e84ae0fdcccf9ee651a
Updated to add hints 2023-04-22 22:58 PT [-7 UTC]
Apr 23, 1:32am: Cipher Challenge โ Cipher Challenge (M$1,000 Subsidy)
Apr 24, 7:53am: Cipher Challenge (M$1,000 Subsidy) โ Cipher Challenge (M$2,000 Subsidy)
Cipher 1 (Solitaire cipher stream that operates only on alphabet characters)
ยทย ย ย ย ย ย ย ย 38656329ecee937d995c85551e658d3667648c0366f6818903dda4927fb1110d
oย ย Startyouwillneedtofigureoutwherethespacecharactersbelongendstartthepassphraseisloudsoundsscaremeendstartcommentthepassphrasewithappropriatespacesbetweenwordsonthismarkettosecretlyupdatetheresolutionrolltoarandomnumberfromfiftyfivetoeightyfiveendstartthispassphraseissubordinatetotheothercipherendxxxx
Clear Text of Cipher 1 with spaces
ยทย ย ย ย ย ย ย ย d4c5b428c79c2a0f29b0885d9e1102a2b08f66ef43fdb1537848b01b2e0676dd
oย ย start you will need to figure out where the space characters belong end start the passphrase is loud sounds scare me end start comment the passphrase with appropriate spaces between words on this market to secretly update the resolution roll to a random number from fifty five to eighty five end start this passphrase is subordinate to the other cipher end
Cipher 2 Clear Text (spaces added)
ยทย ย ย ย ย ย ย ย 111 146 040 171 157 165 040 143 157 155 155 145 156 164 040 042 124 150 145 040 145 156 144 040 151 163 040 143 157 155 151 156 147 056 042 040 164 150 145 156 040 164 150 145 040 155 141 162 153 145 164 040 167 151 154 154 040 162 145 163 157 154 166 145 040 165 163 151 156 147 040 141 040 162 145 163 157 154 165 164 151 157 156 040 162 157 154 154 040 157 146 040 141 040 162 141 156 144 157 155 040 156 165 155 142 145 162 040 146 162 157 155 040 067 062 040 164 157 040 067 070 056
oย ย Decodes from Octal to Human readable Clear Text
ยทย ย ย ย ย ย ย ย b22a82f1b7bb6c8e12e0074be78f29feae135ebe547e83e8e974fae77569e02c
oย ย If you comment "The end is coming." then the market will resolve using a resolution roll of a random number from 72 to 78.
Passphrases to trigger restricted resolution windows.
ยทย ย ย ย ย ย ย ย 8d048c6b079298ee7245a8f6b85dfb9bb4da56c5b7ac70470174bfdcfe44844d
oย ย The end is coming.
ยทย ย ย ย ย ย ย ย 2f851dc992625d9cd9a685b9e0bdff6d2610633ba7e38e84ae0fdcccf9ee651a
oย ย Loud sounds scare me.
@Harry_ updated the resolution criteria to a random number from 55 to 85 with the comment made here .
@ShitakiIntaki your random number is: 78
Technical details
Round: 3097453, salt: ztD8xPijzdoAjN18dbGx, retries: 0. To validate, run the following Linux command: echo -n 0f5877bc1ed7765be91303aa6de05bbd7d20195276fd851b2dd303d2bffdbad6-ztD8xPijzdoAjN18dbGx | sha256sum
. Take the first sixteen hex digits of the output (0x1ea5e67b6f2b6975 = 2208424610115578229) modulo 31 and add 55. Randomness details:
{"round": 3097453, "randomness": "0f5877bc1ed7765be91303aa6de05bbd7d20195276fd851b2dd303d2bffdbad6", "signature": "b56bd25ac704d44e78ba2dbb1d2aea1dd94fd82c09bd49f3a56c9889e513558365f880eb0a10753585d9b3dd66a9eaf90ad81b9c8d8d6038583082d2b38aaab4059a4f95bb19de1f0ec152dfd39f3f97c2b530034845bf661b2bec9316f81f45", "previous_signature": "a67958e130498004f113b10fdafc288d6d334050d4e98cf38b367d88047b0c6396b0876b5833593c6e172e468a4673a30c30f6b12c7d8c0e9304d98281f7b002f2be1c9e08e0ae695983497b59edfafe38b69f92911e7ced8afc9a35e2dfb232", "timestamp_retrieved": 1688354611, "timestamp_available_estimate": 1688354610}
@ShitakiIntaki you asked for a random integer between 55 and 85, inclusive. Coming up shortly!
You can view the open-source implementation and usage instructions for this bot on GitHub.
Technical details
Previous round: 3097380 (latest), offset: 73, selected round: 3097453, salt: ztD8xPijzdoAjN18dbGx. Algorithm:
m = hashlib.sha256()
m.update(randomness['randomness'].encode('ascii'))
m.update('-ztD8xPijzdoAjN18dbGx'.encode('ascii'))
while True:
m_int = int.from_bytes(m.digest()[:8], byteorder='big')
if m_int < 18446744073709551600:
return (m_int % 31) + 55
m.update("-RETRY")
Randomness details:
{"round": 3097380, "randomness": "754ac08c2660142d196024cb9e59ba52c5600b83294c8cdc29eb75474b8538d0", "signature": "b0fc77f70300f6f0e4574cd506263a2e8ac1778a3110bcd3182d8bce1b4f0588febada12f05716c2fc05b3107a72658700834190c57c61549072ea275eca9b8cc5a247cadf8fcf272ec07bfda5eb0e70b0b4f581120095b5c3978f680a9cf659", "previous_signature": "aea7759a9abbe1eba45d0f5e66f0f552d770cb303c23e7cb02bd6b46e871f90d9d3896a525ae0d092b55ef779ecdab570abb61ef7b1b63ff104a7387f4cf71481df624ffa41bc49196cb9231edc64c1c938ebed8ded2ee3e2252c39315518cf5", "timestamp_retrieved": 1688352439, "timestamp_available_estimate": 1688352420}
I wish there had been greater engagement on this market, but as @AlexbGoode observed, this is an information disparity experiment so the incentive is to not share any information, or to even leak information by trading and then to trade as late as possible upon your credence of whether or not you believe you have the most information.
I will excited if, after the close of all the markets, everyone shares their notes and thoughts.
I have been preparing a post to copy paste to the end of the the description once the market closes and revealing all of the SHA 256 hashed verification strings.
As for trustworthiness criteria for the market for the failsafe: I didn't do a complete evaluation of FairlyRandom, I only skimmed it. It looks like it is impossible to guess beforehand for this market since it uses the comment ID for the salt and this won't be known until the market creator rolls, which will be after the market close (a large enough offset will also solve this problem). So it is unlikely the failsafe will be activated (since it seems trustworthy at face) unless the bot is down or hacked or something.
I haven't deciphered the second cipher so I don't know whether the second cipher will narrow it below or above the new range given by the first. Knowing that the first cipher range includes the descriptive range of 10:90, it seems the best thing to do is NOT bet since I have insufficient information on how the second cipher will modify or whether it will be triggered.
UPDATE : In light of the absolute crazy stuff that has taken place in WvM and the discussion surrounding whale actions, I have updated the resolution criteria for the market as detailed in edits to the description.
DEPRICATED PREVIOUS RESOLUTION CRITERIA: Resolves YES if the market percentage is less than number rolled, resolves NO if the market percentage is greater than or equal to the number rolled.
Editorial Note: It came to my attention that the Binary YES/NO resolution, although intended to not be profitable to whales, could result in rational traders losing money if, for example, someone came in an irrationally bought NO all the way down to 1% which would guarantee a YES resolution and hose the "whale" but also hose anyone else that had a rational reason to buy NO shares to correct the market percentage. The expected value of rational bets is more or less the same as previous, sans the slight edge NO had in the case of if equal to the roll. If anyone has serious concerns over this update I may resolve NA and recreate the market.
@Harry_ I should have looked at the market earlier so far it is too easy. Edit: I take it back. There are not enough hints for the second cipher.
@Harry_ Give me a hint on how to do the spacings for the second cipher! There are a bunch of 00's in there. Splicing it along them still yields numbers above 52.
@Harry_ Don't know if you've decrypted the second challenge:
https://manifold.markets/ShitakiIntaki/will-someone-be-confirmed-to-have-d-545e387b5c22
Why did you not bet on the related market? You definitely had 'insider' knowledge. ๐
@AlexbGoode the range of the random number is 10 to 90 inclusive. Subset is meant to convey that the constraints are completely contained with in the known constraints, i.e. Cipher 1 won't suddenly make a roll outside of the 10 to 90 range possible, Cipher 2 won't include any possibilities that were not possible under Cipher 1.
The intent is that Cipher 2 is more effort than Cipher 1, how much more effort depends upon how you come to decipher Cipher 1.
@AlexbGoode I am happy if you learned something new in your research. My goal is to share my hobbyist interests and to provide an incentive to learning.
@IsaacKing I don't have much within my power ro offer as an incentive beside subsidies. If I could offer a bounty it would be a better individual incentive, but my hope was if the market became high enough volume then the margins would be come an incentive. Problem really seems to be how to kick it off.
@IsaacKing I am all ears if you have a suggestion, I would love to see more engagement on the market and provide an incentive for others to learn about a new topic.
@ShitakiIntaki If I wanted to win this market, I would just bet it up to 90% or down to 10% at the last minute. Solving the cipher would only give me the additional benefit of being able to narrow that range slightly, but that's not helpful as long as I have enough mana to push it all the way to 90/10.
If you want to incentivize people to solve it, you should just offer a bounty for the solution (if you want people to work on it individually) or make a market on whether they solve it (if you want people to work on it collaboratively.)
I just made one with a different (probably much simpler) cipher to see how it goes.
@IsaacKing the resolution criteria actually would make such a maneuver a losing one. If you bet it down below 10%, it is guaranteed to resolve YES, so whomever bought NO would be doing so at a loss. Conversely if you bet up beyond 90% just before close then it is guaranteed to resolve NO.
@ShitakiIntaki I suppose someone with a large interest in one resolution or another could use an alt or proxy to take an individual loss for the benefit of others. I only safeguarded against a lone share holder manipulating the market for personal gain, not against coordinated manipulation for an aggregated gain, however my understanding is that such a manipulation flirts with violation of the community standards.
@ShitakiIntaki Oh, whoops. I read the description incorrectly, thought it resolved in the direction of the probability.
@IsaacKing I did want to make the cipher relevant, but I do feel like the consequence is that now the market should trend towards 50% so it could dampen trade volume. That is unless people play mind games, placing bets to mislead others into believing the market should be elsewhere, to misrepresent that they deciphered some or all of the ciphers or to obfuscate that they have in fact done so.
@ShitakiIntaki I should have never discouraged Issac from participating however Issac wanted to. Some high profile participants might have generated more interest.