Watch
1
0
Fork
You've already forked coins
0
mirror of https://github.com/rheaplex/coins.git synced 2026-09-16 16:32:04 +00:00
No description
  • JavaScript 75.7%
  • C++ 12.5%
  • Makefile 10%
  • HTML 1.4%
  • CSS 0.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2014-05-03 22:22:36 -07:00
css Initial commit 2014-01-18 13:15:28 -08:00
facecoin_pow_test Add Monkeycoin JS demo. Stop Facecoin JS demo aligning to square boundaries (this shows better what the algorithm actually found). Add Facecoin C++ version. 2014-05-03 22:22:36 -07:00
js Add Monkeycoin JS demo. Stop Facecoin JS demo aligning to square boundaries (this shows better what the algorithm actually found). Add Facecoin C++ version. 2014-05-03 22:22:36 -07:00
facecoin.html Initial commit 2014-01-18 13:15:28 -08:00
monkeycoin.html Add Monkeycoin JS demo. Stop Facecoin JS demo aligning to square boundaries (this shows better what the algorithm actually found). Add Facecoin C++ version. 2014-05-03 22:22:36 -07:00
README Add Monkeycoin JS demo. Stop Facecoin JS demo aligning to square boundaries (this shows better what the algorithm actually found). Add Facecoin C++ version. 2014-05-03 22:22:36 -07:00

* Coins

Artworks are proofs of aesthetic work.

** Facecoin

Facecoin uses machine pareidolia as its proof of work. This is implemented by applying CCV's JavaScript face detection algorithm to SHA-256 digests represented as greyscale pixel maps. An industrial-strength version would use OpenCV. Due to the limitations of face detection as implemented by these libraries, the digest pixel map is upscaled and blurred to produce images of the size and kind that they can find faces in.

The difficulty can be varied by altering the size and blur of the pixmap. Or by only allowing particular detected face bounds rectangles to be used a set number of times.

** Monkeycoin

Monkeycoin uses typing the complete works of Shakespeare as its proof of work. The first words of the first play in the First Folio is used as a reasonably neutral starting point for this:

"THE TEMPEST Actus primmus, Scena prima..."

Digests are compared to increasingly long runs of characters from the complete works. Difficulty increases as longer runs of characters must be matched. The blockchain can be extended once the first section is matched until all the plays in the First Folio have been matched. This creates a sawtooth waveform of difficulty over time.

* Libraries

ccv.js and face.js are from: https://github.com/liuliu/ccv

sjcl.js is from https://github.com/bitwiseshiftleft/sjcl/

StackBlur.js is from http://www.quasimondo.com/StackBlurForCanvas/StackBlur.js

jquery.js is from the minified version at from http://jquery.com/download/

All are BSD/MIT variant licensed, sjcl is also GPLv2+ licensed.