Go to file
Jaco Greeff 1987dad527 Allow signing via Qr (#4881)
* QR code scanning in-place

* QrScan component

* Update tests

* s/store/createStore/ in props

* Create of actual accountsInfo entry

* Exteral/hardware forget, no password change

* Add external accounts to accounts list

* Render external accounts in section (along with hw)

* Manul test bugfixes

* Display Qr code for tx signing

* Align QR code

* Hints for QR operations

* Generate actual qr codes based on tx data

* Add leading 0x if not found

* Update tests for 0x leading addition

* from & rpl without leading 0x

* Auto-detect QR code size (input length)

* Confirm raw

* WIP (lots of logging)

* WIP

* Chain-replay protection

* Readability

* Re-add r: chainId

* s = 0, r = 0, v = chainId

* Update eth_signTransaction to send transaction object

* And it actually works.

* Externalise createUnsigned/createSigned

* Check for nonce updates (future: subscriptions)

* Allow gas overrides

* Expose formatted condition

* Extract calculation (cap at 40)

* Remove debug log

* Fix rename linting

* Allow for signing hash & rlp (App support forthcoming)

* WIP

* User original qrcode-generator package

* Complete hash + rlp signing

* Accurate QR code size calculation

* Simplify type calculation

* R-eactivate current mobile interface (TODO for new)

* Move napa to dep

* Allow external accounts visibility in dapps

* Allow napa install on CI

* Allow new signTransaction & signTransactionHash functionality
2017-03-31 23:36:24 +02:00
dapps Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
devtools v1.7 (#4730) 2017-03-07 17:29:27 +01:00
docker Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
ethash updating dependencies (#5028) 2017-03-28 19:06:08 +02:00
ethcore Merge pull request #4999 from paritytech/eip-213 2017-03-31 14:54:07 +02:00
ethcrypto Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
ethkey Squashed: Public Node 2017-03-29 17:07:58 +02:00
ethstore Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
evmbin updating dependencies (#5028) 2017-03-28 19:06:08 +02:00
evmjit v1.7 (#4730) 2017-03-07 17:29:27 +01:00
hash-fetch v1.7 (#4730) 2017-03-07 17:29:27 +01:00
hw Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
ipc Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
ipc-common-types updating dependencies (#5028) 2017-03-28 19:06:08 +02:00
ipfs Updating JSON-RPC crates (#4934) 2017-03-22 07:02:14 +01:00
js Allow signing via Qr (#4881) 2017-03-31 23:36:24 +02:00
json Strict validation transitions (#4988) 2017-03-28 10:46:52 +02:00
local-store rlp deserialization refactor, 30% faster (#4901) 2017-03-22 14:41:46 +01:00
logger updating dependencies (#5028) 2017-03-28 19:06:08 +02:00
mac Various installer and tray apps fixes (#4970) 2017-03-23 13:25:31 +01:00
nsis Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
parity Squashed: Public Node 2017-03-29 17:07:58 +02:00
rpc fix rpc tests 2017-03-29 20:44:08 +02:00
rpc_cli Port `try` macro to new `?` operator. (#3962) 2016-12-27 12:53:56 +01:00
rpc_client Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
scripts Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
secret_store updating dependencies (#5028) 2017-03-28 19:06:08 +02:00
signer Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
stratum updating dependencies (#5028) 2017-03-28 19:06:08 +02:00
sync updating dependencies (#5028) 2017-03-28 19:06:08 +02:00
updater Avoid clogging up tmp when updater dir has bad permissions. (#5024) 2017-03-24 19:03:59 +01:00
util Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
windows/ptray Better windows icon (#4804) 2017-03-08 14:42:56 +01:00
.editorconfig Fixing travis.yml 2016-07-11 18:23:24 +02:00
.gitignore Only ignore parity.* files in root 2016-12-12 15:43:24 +01:00
.gitlab-ci.yml Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
.gitmodules Removing submodule in favour of rust crate (#2756) 2016-10-22 20:07:12 +02:00
Cargo.lock Merge pull request #4999 from paritytech/eip-213 2017-03-31 14:54:07 +02:00
Cargo.toml updating dependencies (#5028) 2017-03-28 19:06:08 +02:00
LICENSE Change to library. 2015-11-24 21:05:08 +01:00
README.md Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00
build.rs Detect rust compiler version in Parity build script, closes 4742 (#4907) 2017-03-15 14:03:11 +01:00
license_header Fix whitespace (#4299) 2017-01-25 18:51:41 +01:00
rustfmt.toml Some tuning of rustfmt 2016-04-13 17:39:20 +02:00
test.sh Enable Panic=abort (#3423) 2016-12-08 11:31:57 +01:00

README.md

Parity

Fast, light, and robust Ethereum implementation

build status Coverage Status GPLv3

Join the chat!

Parity Join the chat at https://gitter.im/ethcore/parity and parity.js Join the chat at https://gitter.im/ethcore/parity.js

Internal Documentation

Be sure to check out our wiki for more information.

Parity requires Rust version 1.15.0 to build


About Parity

Parity's goal is to be the fastest, lightest, and most secure Ethereum client. We are developing Parity using the sophisticated and cutting-edge Rust programming language. Parity is licensed under the GPLv3, and can be used for all your Ethereum needs.

Parity comes with a built-in wallet. To access Parity Wallet simply go to http://127.0.0.1:8080/. It includes various functionality allowing you to:

  • create and manage your Ethereum accounts;
  • manage your Ether and any Ethereum tokens;
  • create and register your own tokens;
  • and much more.

By default, Parity will also run a JSONRPC server on 127.0.0.1:8545. This is fully configurable and supports a number of RPC APIs.

If you run into an issue while using parity, feel free to file one in this repository or hop on our gitter chat room to ask a question. We are glad to help!

Parity's current release is 1.5. You can download it at https://parity.io or follow the instructions below to build from source.


Build dependencies

Parity is fully compatible with Stable Rust.

We recommend installing Rust through rustup. If you don't already have rustup, you can install it like this:

  • Linux:

    $ curl https://sh.rustup.rs -sSf | sh
    

    Parity also requires gcc, g++, libssl-dev/openssl, libudev-dev and pkg-config packages to be installed.

  • OSX:

    $ curl https://sh.rustup.rs -sSf | sh
    

    clang is required. It comes with Xcode command line tools or can be installed with homebrew.

  • Windows

    Make sure you have Visual Studio 2015 with C++ support installed. Next, download and run the rustup installer from https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe, start "VS2015 x64 Native Tools Command Prompt", and use the following command to install and set up the msvc toolchain:

    $ rustup default stable-x86_64-pc-windows-msvc
    

Once you have rustup, install parity or download and build from source


Quick install

cargo install --git https://github.com/paritytech/parity.git parity

Build from source

# download Parity code
$ git clone https://github.com/paritytech/parity
$ cd parity

# build in release mode
$ cargo build --release

This will produce an executable in the ./target/release subdirectory. Note: if cargo fails to parse manifest try:

$ ~/.cargo/bin/cargo build --release

Simple one-line installer for Mac and Ubuntu

bash <(curl https://get.parity.io -Lk)

Start Parity

Manually

To start Parity manually, just run

$ ./target/release/parity

and Parity will begin syncing the Ethereum blockchain.

Using systemd service file

To start Parity as a regular user using systemd init:

  1. Copy parity/scripts/parity.service to your systemd user directory (usually ~/.config/systemd/user).

  2. To pass any argument to Parity, write a ~/.parity/parity.conf file this way: ARGS="ARG1 ARG2 ARG3".

    Example: ARGS="ui --identity MyMachine".