forked from cheng/wallet
planning to work on trust feature
docs | ||
libsodium@561e556dad | ||
mpir@33be9007f9 | ||
nmake | ||
sqlite3 | ||
wxWidgets@35a6d7b15f | ||
.gitattributes | ||
.gitconfig | ||
.gitignore | ||
.gitmodules | ||
app.cpp | ||
app.h | ||
CMakeLists.txt | ||
db_accessors.h | ||
display_wallet.cpp | ||
display_wallet.h | ||
frame.cpp | ||
frame.h | ||
Icon.ico | ||
ILog.cpp | ||
ILog.h | ||
introspection_of_standard_C_types.h | ||
ISqlit3Impl.cpp | ||
ISqlite3.h | ||
LICENSE.html | ||
localization.cpp | ||
localization.h | ||
mpir_and_base58.cpp | ||
mpir_and_base58.h | ||
NOTICE.html | ||
public_key.gpg | ||
README.html | ||
RELEASE_NOTES.html | ||
rho.ico | ||
rho.xpm | ||
ristretto255.cpp | ||
ristretto255.h | ||
rotime.cpp | ||
rotime.h | ||
secrets.cpp | ||
secrets.h | ||
slash6.cpp | ||
slash6.h | ||
stdafx.cpp | ||
stdafx.h | ||
testbed.cpp | ||
tobedone.txt | ||
unit_test.cpp | ||
wallet.manifest | ||
wallet.rc | ||
wallet.sln | ||
wallet.vcxproj | ||
welcome_to_rhocoin.cpp | ||
welcome_to_rhocoin.h | ||
winConfigure.bat | ||
winConfigure.sh |
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <head> <meta charset="utf-8" /> <meta name="generator" content="pandoc" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> <title>README</title> <style> code{white-space: pre-wrap;} span.smallcaps{font-variant: small-caps;} span.underline{text-decoration: underline;} div.column{display: inline-block; vertical-align: top; width: 50%;} div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;} ul.task-list{list-style: none;} pre > code.sourceCode { white-space: pre; position: relative; } pre > code.sourceCode > span { display: inline-block; line-height: 1.25; } pre > code.sourceCode > span:empty { height: 1.2em; } .sourceCode { overflow: visible; } code.sourceCode > span { color: inherit; text-decoration: inherit; } div.sourceCode { margin: 1em 0; } pre.sourceCode { margin: 0; } @media screen { div.sourceCode { overflow: auto; } } @media print { pre > code.sourceCode { white-space: pre-wrap; } pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; } } pre.numberSource code { counter-reset: source-line 0; } pre.numberSource code > span { position: relative; left: -4em; counter-increment: source-line; } pre.numberSource code > span > a:first-child::before { content: counter(source-line); position: relative; left: -1em; text-align: right; vertical-align: baseline; border: none; display: inline-block; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; padding: 0 4px; width: 4em; color: #aaaaaa; } pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; } div.sourceCode { } @media screen { pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; } } code span.al { color: #ff0000; font-weight: bold; } /* Alert */ code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */ code span.at { color: #7d9029; } /* Attribute */ code span.bn { color: #40a070; } /* BaseN */ code span.bu { } /* BuiltIn */ code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */ code span.ch { color: #4070a0; } /* Char */ code span.cn { color: #880000; } /* Constant */ code span.co { color: #60a0b0; font-style: italic; } /* Comment */ code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */ code span.do { color: #ba2121; font-style: italic; } /* Documentation */ code span.dt { color: #902000; } /* DataType */ code span.dv { color: #40a070; } /* DecVal */ code span.er { color: #ff0000; font-weight: bold; } /* Error */ code span.ex { } /* Extension */ code span.fl { color: #40a070; } /* Float */ code span.fu { color: #06287e; } /* Function */ code span.im { } /* Import */ code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */ code span.kw { color: #007020; font-weight: bold; } /* Keyword */ code span.op { color: #666666; } /* Operator */ code span.ot { color: #007020; } /* Other */ code span.pp { color: #bc7a00; } /* Preprocessor */ code span.sc { color: #4070a0; } /* SpecialChar */ code span.ss { color: #bb6688; } /* SpecialString */ code span.st { color: #4070a0; } /* String */ code span.va { color: #19177c; } /* Variable */ code span.vs { color: #4070a0; } /* VerbatimString */ code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */ .display.math{display: block; text-align: center; margin: 0.5rem auto;} </style> <style type="text/css">body { max-width: 30em; margin-left: 1em; } table { border-collapse: collapse; } td, th { border: 1px solid #999; padding: 0.5rem; text-align: left; } code{white-space: pre-wrap; } span.smallcaps{font-variant: small-caps; } span.underline{text-decoration: underline; } div.column{display: inline-block; vertical-align: top; width: 50%; } div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em; } ul.task-list{list-style: none; } .display.math{display: block; text-align: center; margin: 0.5rem auto; } h1.title{text-align: center; font-size: xxx-large; } div.center {text-align:center; } div.centre {text-align:center; } table { border-collapse: collapse; } td, th { border: 1px solid #999; padding: 0.5rem; text-align: left; } </style> <!--[if lt IE 9]> <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script> <![endif]--> </head> <body> <header id="title-block-header"> <h1 class="title">README</h1> </header> <p><a href="docs/index.htm">pre alpha documentation (mostly a wish list)</a></p> <p><a href="./license.txt">copyright © and license</a></p> <p>pre-requisite, Pandoc to build the html documentation from the markdown files.</p> <p>Windows pre-requisites: Visual Studio and git-bash</p> <p>To obtain the source code from which the project can be built, including this README, from the bash command line (git-bash in windows).</p> <pre class="bash2"><code>git clone --recurse-submodules missing url</code></pre> <p>To configure and build the required third party libraries in windows, then build the program and run unit test for the first time, launch the Visual Studio X64 native tools command prompt in the cloned directory, then:</p> <pre class="bat"><code>winConfigure.bat</code></pre> <p>Should the libraries change in a subsequent <code>pull</code> you will need</p> <pre class="bat"><code>git pull rem you get a status message indicating libraries have been updated. git pull -force --recurse-submodules winConfigure.bat</code></pre> <p>in order to rebuild the libraries.</p> <p>The <code>--force</code> is necessary, because <code>winConfigure.bat</code> changes many of the library files, and therefore git will abort the pull.</p> <p><code>winConfigure.bat</code> also configures the repository you just created to use <code>.gitconfig</code> in the repository, causing git to to implement GPG signed commits – because <a href="./docs/contributor_code_of_conduct.html#code-will-be-cryptographically-signed" target="_blank" title="Contributor Code of Conduct">cryptographic software is under attack</a> from NSA entryists and shills, who seek to introduce backdoors.</p> <p>This may be inconvenient if you do not have <code>gpg</code> installed and set up.</p> <p><code>.gitconfig</code> adds several git aliases:</p> <ol type="1"> <li><code>git lg</code> to display the gpg trust information for the last four commits. For this to be useful you need to import the repository public key <code>public_key.gpg</code> into gpg, and locally sign that key.</li> <li><code>git graph</code> to graph the commit tree with signing status</li> <li><code>git alias</code> to display the git aliases.</li> </ol> <div class="sourceCode" id="cb4"><pre class="sourceCode bash"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="co"># To verify that the signature on future pulls is</span></span> <span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a><span class="co"># unchanged.</span></span> <span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a><span class="ex">gpg</span> <span class="at">--import</span> public_key.gpg</span> <span id="cb4-4"><a href="#cb4-4" aria-hidden="true" tabindex="-1"></a><span class="ex">gpg</span> <span class="at">--lsign</span> 096EAE16FB8D62E75D243199BC4482E49673711C</span></code></pre></div> <p>We ignore the Gpg Web of Trust model and instead use the Zooko identity model.</p> <p>We use Gpg signatures to verify that remote repository code is coming from an unchanging entity, not for Gpg Web of Trust. Web of Trust is too complicated and too user hostile to be workable or safe.</p> <p>Never –sign any Gpg key related to this project. –lsign it.</p> <p>Never check any Gpg key related to this project against a public gpg key repository. It should not be there.</p> <p>Never use any email address on a gpg key related to this project unless it is only used for project purposes, or a fake email, or the email of an enemy. We don’t want Gpg used to link different email addresses as owned by the same entity, and we don’t want email addresses used to link people to the project, because those identities would then come under state and quasi state pressure.</p> <p>To build the documentation in its intended html form from the markdown files, execute the bash script file <code>docs/mkdocs.sh</code>, in an environment where <code>pandoc</code> is available. On Windows, if Git Bash and Pandoc has been installed, you should be able to run this shell file in bash by double clicking on it.</p> <p><a href="./RELEASE_NOTES.html">Pre alpha release</a>, which means it does not yet work even well enough for it to be apparent what it would do if it did work.</p> </body> </html>