WORLD-WIDE CONTEST for BITCOIN SPREADSHEET WALLETS




* * * 5 BTC in prizes - worth over US $1,500 at Nov 14, 2015 prices * * *

A total of 5 BTC and will be paid out regardless of number of entries.


Earn up to 1 BTC for verifying the functions in the attached spreadsheet against the formal Bitcoin protocol.


If you can find nothing wrong with it, you can win by confirming its validity.

If you can find errors, in the spreadsheet or in the postings of others, you can win by reporting these errors and proposing a correction.


The contest is broken down to 5 parallel contests for accurately confirming or correcting each of the 5 functions in the attached spreadsheet.



CONTEST RULES


Whereas John Prescott (the "Educator") wishes to educate the general public about Bitcoin.
Whereas the Educator feels that owning bitcoin is risky as an investment, and holding it is even riskier, and yet keeps being asked about user-friendly wallets.
Whereas the Educator feels that the current wallets require intricate knowledge of the workings of Bitcoin at the expense of usability.
Now, therefore be it known that:
The Educator has taken a reverse approach to wallet creation, starting with the most flexible usability tool (spreadsheets), and packaging in there the Bitcoin algorithms.
And has retained Robert Milton (the "Coder") to encode these algorithms in Visual Basic for Applications (VBA) and include in a spreadsheet.
And the Coder has done so, based on information publicly available.
And the resulting spreadsheet is attached to this blog.
And both the Educator and the Coder recognize that the algorithms run very slowly on spreadsheets, because VBA was never designed for efficient processing of signed 16 bit integers.
And both the Educator and Coder would like to obtain assurance about the validity of this code.
The following FIVE parallel contests are proclaimed between November 14, 2015 and February 13, 2016:

Contest #1: 1BTC for function Text2SHA256Digest()

Contest #2: 1BTC for function SHA256Digest2Password()

Contest #3: 1BTC for function Password2PublicKey()

Contest #4: 1BTC for function PublicKey2Account()

Contest #5: 1BTC for function String2QRC()

Programming knowledge is required. Contestants are to download and review the attached spreadsheet, which contains a first attempt for each algorithm.

Click to download from dropbox. You do not need to create an account.

Upon downloading please verify (Apple Windows) the checksums:
MD5: dacdb634739df14d90a17ab4eafd3610
SHA1: a79a82c81be2138010bd3a494d8b351a1db1e11d

Contestants may be individuals or organizations.


A contestant may enter either as themselves or as representatives of their organization.


Limit one contestant per organization per contest.


In order to be valid:
- individual contestants must register in this blog with an email address that matches their name at least partially, and include at least one link to a public account with a picture (e.g. Facebook, Linkedin, etc.)
- contestants who enter their organization, must register with an email address from the same domain as the organization's main website


Each entry must be submitted at the page of that contest, and must specify
(a) the entrant type, individual or organization
(b) the entrant name
(c) the entry content:
- If the contestant deems the algorithm to be correctly implemented, they must certify it and publicize their findings in their own Facebook and/or Linkedin page. Their blog post on this blog must be a link to this blog and their posted findings.
- If the contestant deems the algorithm is incorrectly implemented, they must point out any errors and recommend corrections.
- If the contestant deems the algorithm to be correctly implemented, but the algorithm can be made more efficient, they may point that out as well
- If the contestant deems a previous blog post on any of these contests to be incorrect, they may post a correction to that, phrased in constructive, helpful language.
(d) a Bitcoin account in which to receive any prizes
(e) optionally any links of interest to the readers such as to their organization's website.


At times when convenient to them, the Educator and the Coder will review the posted entries, and publicize them at their discretion. The intent is for all serious entries to be considered.


Posted entries will be listed in order of submission.


Prizes.
Upon entering, all comments will await moderation.
All comments will be reviewed. The more serious, succinct, and constructive ones will be posted.
Entries may be disqualified for any reason or no reason.
Entries will be disqualified if they use inappropriate language, deride anything or anybody in any way, or are suspected to be coordinated, even if such suspicion is unprovable.

For each contest a minimum of 1 BTC will be paid as follows:
If there is dissension about whether the algorithm is correctly or incorrectly implemented, this dissension will be resolved one way or the other by the Educator and the Coder, who may even reach out to the Bitcoin Foundation for final arbitration.
If there is agreement that the algorithm is correctly implemented, then all the certifying contestants will receive an honorable mention. Additionally, each of the 5 earliest certifying contestants will receive 0.2 BTC.
If there is agreement that the algorithm is incorrectly implemented, then all the contributing contestants will receive an honorable mention. Additionally, the 1 BTC prize will be divided equally among the number of distinct errors, and the first contestant who reported each error will receive that portion.
Maximum prize per contestant is 1BTC, and can be attained by winning 0.2 BTC in each of the 5 individual contests - but it can be more, as per the next two clauses:
For each contest, if there are fewer than 5 winning contestants, then 1 BTC will be divided equally among the winning contestants. If there are no winning contestants, then the 1 BTC will be divided among the remaining contests.
Separately, at the discretion of the Educator and the Coder, an additional award may be given for suggesting code efficiencies.
Taxes are responsibility of the winners.
All decisions are final, and at the sole discretion of the Educator and the Coder.


By entering the contest, each entrant agrees for entrant and for entrant's heirs, executors, and administrators (a) to release and hold harmless the Educator and the Coder and each of their respective officers, directors, and employees (collectively, "Released Parties") from any liability, illness, injury, death, loss, litigation, or damage that may occur, directly or indirectly, whether caused by negligence or not, from such entrant's participation in the contest and/or his/her acceptance, possession, use, or misuse of Prize or any portion thereof; (b) to indemnify Released Parties from any and all liability resulting or arising from the contest and to hereby acknowledge that Released Parties have neither made nor are in any manner responsible or liable for any warranty, representation, or guarantee, express or implied, in fact or in law, relative to Prize; (c) if selected as a Winner, to the posting of such entrant's name on the Website and the use by Released Parties of such name, voice, image, and/or likeness for publicity, promotional, and advertising purposes in any and all media now or hereafter known, throughout the world in perpetuity, without additional compensation, notification, permission, or approval, and, upon request, to the giving of consent, in writing, to such use; and (d) to be bound by these Official Rules and to waive any right to claim any ambiguity or error therein or in the contest itself, and to be bound by all decisions of the Educator and the Coder, which are binding and final. Failure to comply with these conditions will result in disqualification from the Contest at the Educator's sole discretion.


The spreadsheet contains the functions as macros, so you will probably get warnings both from your browser and from the application software.You will need to enable macros and may wish to turn off automatically recalculation (F9).


Good luck!

Other topics