Commit Graph

  • 1e5ff0eeff Integration of target calculation with header validation and pow. Enforce strictly progessing time. Ignotus Peverell 2016-11-16 17:03:23 -08:00
  • ca26f0c3f7 Block header needs its own deserialization. Fixed pow verify to use the block target. Ignotus Peverell 2016-11-16 14:08:46 -08:00
  • 1d2b23a4a5 Several simple fixes to reflect changes from core (Result instead of Option for errors, consensus module, etc.) Ignotus Peverell 2016-11-15 17:29:42 -08:00
  • 3c5e2b2958 Block now uses the new Target type. Consensus next_target calculation adjusting every block based on deviation and increasing Cuckoo size gradually. Block time of a minute until we learn more from mining ecosystem, so enough PoW attempts can be made even on CPUs. Ignotus Peverell 2016-11-15 14:37:49 -08:00
  • 44545525f4 Target addition and subtraction. A little more doc. Ignotus Peverell 2016-11-15 12:44:19 -08:00
  • 3a54df15f3 Merge pull request #17 from romanz/patch-1 Ignotus Peverell 2016-11-14 11:41:27 -08:00
  • 151a0150b9 Fix a small typo in documentation Roman Zeyde 2016-11-14 21:21:18 +02:00
  • f7b31dc5f3 Bitcoin-style target implementation. Large 32 byte number that can be compared and serializes truncated. Ignotus Peverell 2016-11-13 21:00:02 -08:00
  • 0440302e73 Merge pull request #16 from GarrickOllivander/fix_file_headers Ignotus Peverell 2016-11-13 09:48:10 -08:00
  • 956dd6b816 fix file headers: Developer -> Grin Developer Garrick Ollivander 2016-11-13 12:45:44 +01:00
  • 2b8faf8709 A few more consensus values. Ignotus Peverell 2016-11-10 17:19:03 -08:00
  • d710301833 Missing consensus file. Ignotus Peverell 2016-11-10 16:02:47 -08:00
  • d2110f5b46 Web IRC link to make it easier for newcomers to connect. Ignotus Peverell 2016-11-10 16:02:33 -08:00
  • 712cf78e8a Merge pull request #14 from ignopeverell/topic/fees-in-sig Ignotus Peverell 2016-11-10 15:55:49 -08:00
  • baeae7d1a5 Merged master. Ignotus Peverell 2016-11-10 15:54:47 -08:00
  • 4ade3ec1b8 Moved consensus related constants to their own core module. Ignotus Peverell 2016-11-09 15:51:24 -08:00
  • 6e2a232ca3 Cleaned up total fees from block header. Unnecessary now. Ignotus Peverell 2016-11-09 13:25:40 -08:00
  • ba5479841e Small doc adjustment to add IRC. Ignotus Peverell 2016-11-09 11:17:58 -08:00
  • 4e9aad639e Formatting fixes. Ignotus Peverell 2016-11-09 11:10:02 -08:00
  • 8317854b70 Slight changes to transaction signature. The transaction fee gets signed (instead of the empty string) and the fee amount is attached to the transaction proof in blocks. This allows fee accounting and the tracking of fees within a block. Ignotus Peverell 2016-11-09 11:05:44 -08:00
  • 2e23c64448 Intro to pruning doc, just some facts and size data. Ignotus Peverell 2016-11-08 09:50:13 -08:00
  • 632e3af8ee Test for sending tx from one peer to another. Common tests module. Ignotus Peverell 2016-11-07 14:02:27 -08:00
  • a47006a75d Merge pull request #12 from merope07/merkle-doc Ignotus Peverell 2016-11-07 11:19:54 -08:00
  • 7b3095ac12 Add design document for Merkle tree structures Merope Riddle 2016-11-05 20:30:40 +00:00
  • ea425dc614 Protocol cleanup. Tests cleanup. Additional test for transaction broadcast. Ignotus Peverell 2016-11-05 16:31:45 -07:00
  • 28f007240e Usefuly read and write implementations to limit and count bytes. Ignotus Peverell 2016-11-04 08:59:49 -07:00
  • 098d17ee42 Added limited and counting readers for protocol to maintain its stats. Added primitive error count. Cleaned up protocol. Ignotus Peverell 2016-11-02 14:19:40 -07:00
  • edc6c62577 Fixed message serialization following changes in core. Sending of block and transaction. Ignotus Peverell 2016-11-01 10:42:33 -07:00
  • 1008539048 Merge pull request #11 from merope07/option-t Ignotus Peverell 2016-11-01 10:25:35 -07:00
  • 33ccfe3b65 core: remove several unused imports Merope Riddle 2016-11-01 01:44:11 +00:00
  • ca89dae7e1 core: unify Hashed and Writeable to simplify things and remove allocations Merope Riddle 2016-11-01 01:37:06 +00:00
  • 245f0a8b56 core/ser: add default implementations for most methods of Writer Merope Riddle 2016-11-01 13:14:26 +00:00
  • 565374bac7 p2p: fix for changes in core serialization API Merope Riddle 2016-11-01 02:03:12 +00:00
  • 630c4eb6fb core/ser: replace write_vec with write_bytes, drop a bunch of clones Merope Riddle 2016-10-31 22:24:43 +00:00
  • bc38016385 core/ser: change serialization trait to use Result<(), Error> in place of Option<Error> Merope Riddle 2016-10-31 22:17:53 +00:00
  • 3ffc2f5d8c Tests improvement. Protocol also measures bytes received (at least for pings). Ignotus Peverell 2016-10-31 12:29:08 -07:00
  • d1bb114b18 Merge pull request #9 from GarrickOllivander/nicer_messagetype Ignotus Peverell 2016-10-31 09:13:08 -07:00
  • 4f55aab006 Merge pull request #8 from GarrickOllivander/intellij_ignore Ignotus Peverell 2016-10-31 09:09:51 -07:00
  • d7dcd6d3ae nicer processing of message types Garrick Ollivander 2016-10-29 15:51:24 +02:00
  • ec3a5728dd ignore ItelliJ IDEA project files Garrick Ollivander 2016-10-29 11:58:28 +02:00
  • ee6fcab8db Proper server and protocol event loop. Channels for shutdown and ping/pong trivial roundtrip. Working test. Ignotus Peverell 2016-10-30 18:23:52 -07:00
  • 2efa8ce706 Merge pull request #7 from GarrickOllivander/fix_merkle_tree_malleability Ignotus Peverell 2016-10-30 18:18:40 -07:00
  • a23308dd9d Added clean stop logic on server and peers. Broken unit test. Ignotus Peverell 2016-10-30 08:24:19 -07:00
  • 42769c373c Re-implemented the whole interaction between server, peer and protocol to be more Rust-ish. Server maintains peer references and protocol is internally mutable. Ignotus Peverell 2016-10-29 12:36:45 -07:00
  • 4e11aab1ea added comment to avoid this vulnarability sneaking back Garrick Ollivander 2016-10-29 18:18:32 +02:00
  • ab3ffafdcd fix merkle tree malleability Garrick Ollivander 2016-10-29 17:55:47 +02:00
  • fdaf2ba6af First working test with related fixes demonstrating a full peer handshake. Ignotus Peverell 2016-10-27 14:28:02 -07:00
  • a9dc8a05ac Preliminary impl of p2p package compiles now. Next step: basic handshake integration test. Ignotus Peverell 2016-10-26 11:21:45 -07:00
  • b1762cb5f4 p2p module getting close to first integration test allowing 2 peers to connect. Fleshed out handshake and protocol use. Fixed most errors, just need to make the borrow checker happy. Ignotus Peverell 2016-10-25 22:06:13 -07:00
  • 4657b09c4e WIP: more p2p code, mostly interaction between peer, protocol and server as well as ser/deser for first message types. Ignotus Peverell 2016-10-24 21:35:10 -07:00
  • 9f780f6865 Converse of deser macro to make serialization of structs less verbose. Ignotus Peverell 2016-10-24 20:41:28 -07:00
  • b50e1ab038 Simple macro to remove some of the verbosity in deserialization. Ignotus Peverell 2016-10-24 17:43:14 -07:00
  • c8aa8d7c18 Getting started on the p2p networking code. Ignotus Peverell 2016-10-23 17:02:02 -04:00
  • 0855d7b41e Merge pull request #4 from merope07/cleanup-oct2016 Ignotus Peverell 2016-10-23 15:58:56 -04:00
  • 4b51610d9a core: move remaining contents of core/ser.rs into ser.rs Merope Riddle 2016-10-23 14:08:41 +00:00
  • 82adc54971 core: separate Transaction into its own module Merope Riddle 2016-10-23 13:18:44 +00:00
  • c1cb57f3a9 Fixed wrong re-export. Ignotus Peverell 2016-10-23 13:13:45 -04:00
  • 2ea58d4478 core: move Block and BlockHeader into their own module Merope Riddle 2016-10-22 22:54:42 +00:00
  • 88b07791fa core: move Hash into its own module Merope Riddle 2016-10-22 22:08:53 +00:00
  • 7e2b271865 add doccomments for consensus comments Merope Riddle 2016-10-22 21:57:55 +00:00
  • 9644fb6a73 Add apache 2.0 license header to all source files Merope Riddle 2016-10-22 18:35:48 +00:00
  • 81c32d4bab Merge pull request #2 from ChronosCrypto/patch-1 Ignotus Peverell 2016-10-22 00:47:49 -04:00
  • e5e908adde Merge pull request #1 from kanzure/trivial-typo-fixes Ignotus Peverell 2016-10-22 00:47:20 -04:00
  • d3e4ecc100 Corrected spelling of Cuckoo Cycle here and there and updated easiness to 50% following @tromp feedback. Ignotus Peverell 2016-10-21 18:02:20 -04:00
  • 396fd58626 Fixing the gitter link. Ignotus Peverell 2016-10-21 16:24:42 -04:00
  • 60380c60c5 fix typo ChronosCrypto 2016-10-21 08:46:17 -07:00
  • 2fff216491 fix some trivial typos Bryan Bishop 2016-10-21 10:17:33 -05:00
  • f73a308bf3 Initial import. Ignotus Peverell 2016-10-20 20:06:12 -04:00