{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":238200739,"defaultBranch":"main","name":"tari-crypto","ownerLogin":"tari-project","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2020-02-04T12:28:48.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/37560539?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1715268296.0","currentOid":""},"activityList":{"items":[{"before":"dc18c4cea8a24b9deed023e1ab283365dada26ca","after":"25ca71ad4881acaa26a603d1ef31a2cd4d200307","ref":"refs/heads/main","pushedAt":"2024-05-09T15:24:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"chore: new version 0.20.1 (#228)\n\nRelease a new version","shortMessageHtmlLink":"chore: new version 0.20.1 (#228)"}},{"before":"e755b26d4da6cef8eb00023a1fdcc923fc71870f","after":"dc18c4cea8a24b9deed023e1ab283365dada26ca","ref":"refs/heads/main","pushedAt":"2024-05-08T05:25:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"chore: update range proof dependency and curve library (#218)\n\nUpdates the Bulletproofs+ range proof dependency and curve library.\r\nMakes a few updates to account for its API changes. Fixes a few lints.","shortMessageHtmlLink":"chore: update range proof dependency and curve library (#218)"}},{"before":"a6cef074ad874eddd8d018da1475df14fd5220c1","after":"e755b26d4da6cef8eb00023a1fdcc923fc71870f","ref":"refs/heads/main","pushedAt":"2024-02-07T16:44:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"fix: reject identity keys and commitments in signatures (#217)\n\nSignature verification currently allows identity elements:\r\n- `SchnorrSignature` allows an identity public key\r\n- `CommitmentSignature` allows an identity commitment\r\n- `CommitmentAndPublicKeySignature` allows both\r\n\r\nThis doesn't strictly break soundness, but does remove message binding.\r\nWhile it shouldn't be problematic for unforgeability, it's a case that\r\nshouldn't arise from an honest signer and is easy to check for.\r\n\r\nThis PR fails signature verification if such an identity element is\r\nprovided, and adds tests for each case. It does _not_ return an error if\r\nthe corresponding identity elements are provided by the signer, since\r\nthis precludes useful partial signature operations.","shortMessageHtmlLink":"fix: reject identity keys and commitments in signatures (#217)"}},{"before":"effb39f7852716bfde51abafc55cb1d042677901","after":"a6cef074ad874eddd8d018da1475df14fd5220c1","ref":"refs/heads/main","pushedAt":"2024-02-07T16:42:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"feat: add constant-time trait bounds (#219)\n\nCurrently, the only implementation of the `SecretKey` and `PublicKey`\r\ntraits is for Ristretto, where both\r\n[scalars](https://github.com/dalek-cryptography/curve25519-dalek/blob/ba737a379071191158bacfa6d138f6249b12fc09/curve25519-dalek/src/scalar.rs#L296-L300)\r\nand [group\r\nelements](https://github.com/dalek-cryptography/curve25519-dalek/blob/ba737a379071191158bacfa6d138f6249b12fc09/curve25519-dalek/src/ristretto.rs#L822-L826)\r\nuse constant-time equality in their underlying `PartialEq`\r\nimplementations, and which support the `ConstantTimeEq` trait.\r\n\r\nThis PR does what it can to encourage the use of constant-time equality\r\nfor keys by doing a few things.\r\n\r\nFirst, it requires that any types implementing `SecretKey` or\r\n`PublicKey` also implement `ConstantTimeEq`. Unfortunately, this doesn't\r\nguarantee that their `PartialEq` implementation defaults to this, and it\r\ndoesn't appear possible to enforce this at the trait level.\r\n\r\nIt also sets a good example by manually implementing `PartialEq` on the\r\nRistretto key types to use their `ConstantTimeEq` implementations. This\r\nisn't strictly necessary, but hopefully helps to indicate best practice.\r\nIt also implements `ConstantTimeEq` directly as required by the new\r\ntrait bounds.\r\n\r\nFinally, it implements `ConstantTimeEq` for `DiffieHellmanSharedSecret`\r\nusing the new trait bound, and removes a redundant `Zeroize` trait\r\nbound.\r\n\r\nNote that this doesn't actually change the current implementations'\r\nbehavior, and therefore incurs no performance hit.\r\n\r\nCloses #139.","shortMessageHtmlLink":"feat: add constant-time trait bounds (#219)"}},{"before":"97690684047ea0b914532c2c023c3b4a6d60d4ec","after":"effb39f7852716bfde51abafc55cb1d042677901","ref":"refs/heads/main","pushedAt":"2024-02-07T15:21:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"ci: pin nightly toolchain (#222)\n\nSadly, nightly CI is borked due to an [upstream\r\nissue](https://github.com/dalek-cryptography/curve25519-dalek/issues/618)\r\nidentified with a recent nightly release.\r\n\r\nThis PR pins the nightly toolchain at a working version.","shortMessageHtmlLink":"ci: pin nightly toolchain (#222)"}},{"before":"017bb2cde069fc8a1b1a6014f339e59dc7fd6ca7","after":"97690684047ea0b914532c2c023c3b4a6d60d4ec","ref":"refs/heads/main","pushedAt":"2024-02-06T03:51:14.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"sdbondi","name":"Stan Bondi","path":"/sdbondi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1057902?s=80&v=4"},"commit":{"message":"ci: fix lint error (#221)\n\nNightly `clippy` incorrectly reports that the commitment `PartialEq`\r\n[implementation](https://github.com/tari-project/tari-crypto/blob/017bb2cde069fc8a1b1a6014f339e59dc7fd6ca7/src/commitment.rs#L157-L161)\r\nrecurses. Changing the syntax to use `==` seems to fix this and does the\r\nsame thing.\r\n\r\nCloses #220.","shortMessageHtmlLink":"ci: fix lint error (#221)"}},{"before":"7ba8484b4431725ab655d895102e80a84dbaaa9b","after":"017bb2cde069fc8a1b1a6014f339e59dc7fd6ca7","ref":"refs/heads/main","pushedAt":"2023-12-06T09:21:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"chore: new release 0.20 (#215)","shortMessageHtmlLink":"chore: new release 0.20 (#215)"}},{"before":"06633d6f70d9a722d05a32c23feaa7d7e0817941","after":"7ba8484b4431725ab655d895102e80a84dbaaa9b","ref":"refs/heads/main","pushedAt":"2023-12-05T09:59:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"},"commit":{"message":"ci(fix): prevent code injection (#214)\n\nUpdate pr_title workflow, to prevent code injection.","shortMessageHtmlLink":"ci(fix): prevent code injection (#214)"}},{"before":"432a893081bab1babaa6e5a712d84884f001d8ba","after":"06633d6f70d9a722d05a32c23feaa7d7e0817941","ref":"refs/heads/main","pushedAt":"2023-11-30T12:41:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"stringhandler","name":"stringhandler","path":"/stringhandler","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4200336?s=80&v=4"},"commit":{"message":"chore: upgrade borsh (#213)\n\nupgrade brosh to version 1.2","shortMessageHtmlLink":"chore: upgrade borsh (#213)"}},{"before":"91d1e779e565dc816a54ab78368d44efcae78a23","after":"432a893081bab1babaa6e5a712d84884f001d8ba","ref":"refs/heads/main","pushedAt":"2023-11-27T08:05:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"fix: add opt-in std support (#212)\n\nThere are cases where std is needed (barring workarounds). E.g. errors\r\nimplementing std::error::Error.\r\n\r\nThis PR adds the ability to opt-in to the stdlib.","shortMessageHtmlLink":"fix: add opt-in std support (#212)"}},{"before":"ff1c39363218d65711f62ddcdee58ce1c9001460","after":"91d1e779e565dc816a54ab78368d44efcae78a23","ref":"refs/heads/main","pushedAt":"2023-11-02T10:48:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"chore: new release 0.19.0 (#211)\n\nUps the version and creates a new release version","shortMessageHtmlLink":"chore: new release 0.19.0 (#211)"}},{"before":"ea71092207df1c756e999847fcb51e8a59203ade","after":"ff1c39363218d65711f62ddcdee58ce1c9001460","ref":"refs/heads/main","pushedAt":"2023-10-25T11:40:48.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"fix!: improve zeroizing support (#209)\n\nThis adds `Zeroize` and `ZeroizeOnDrop` to `ExtendedMask` and\r\n`ExtendedWitness` for improved memory handling functionality. It\r\nrestricts the visibility of an internal commitment constructor and adds\r\nzeroizing to temporary secret values. It updates secret key\r\ndeserialization to add zeroizing to a temporary byte array. Finally, it\r\nremoves a secret key constructor.\r\n\r\nSupersedes #204.\r\n\r\nBREAKING CHANGE: Changes the commitment and secret key APIs.","shortMessageHtmlLink":"fix!: improve zeroizing support (#209)"}},{"before":"f9b6cb8f7a7c6a41373b935ac8293331422f2266","after":"ea71092207df1c756e999847fcb51e8a59203ade","ref":"refs/heads/main","pushedAt":"2023-10-25T11:39:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"test: optimize range proof tests (#201)\n\nTests are currently slow, mainly due to the parameters used in range\r\nproof tests. This PR simplifies these parameters to speed up tests while\r\nstill exercising the required functionality.\r\n\r\nCloses #200.","shortMessageHtmlLink":"test: optimize range proof tests (#201)"}},{"before":"34d8ea5c7d95b1191bbbc283cc14dfe7a8438b8e","after":"f9b6cb8f7a7c6a41373b935ac8293331422f2266","ref":"refs/heads/main","pushedAt":"2023-09-28T07:21:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"stringhandler","name":"stringhandler","path":"/stringhandler","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4200336?s=80&v=4"},"commit":{"message":"feat!: differentiate scalar parsing from byte arrays (#194)\n\nCurrently, creating a scalar `RistrettoSecretKey` [from a byte\r\narray](https://github.com/tari-project/tari-crypto/blob/053119f2110aaf3089c7b9df96f50b8cc8d3217a/src/ristretto/ristretto_keys.rs#L90-L100)\r\nperforms modular reduction on 32 bytes. For cases where the input is\r\nintended to be canonical, this is suboptimal. For cases where the input\r\nis produced from a hashing operation, wide reduction should be used to\r\nmitigate bias.\r\n\r\nThis work renames `SecretKey::from_bytes` to\r\n`SecretKey::from_canonical_bytes` to support an underlying `ByteArray`\r\ntrait update. In the case of `RistrettoSecretKey`, it uses the curve\r\nlibrary's canonical parser and returns an error if the provided byte\r\nslice is not a canonical scalar encoding.\r\n\r\nIt also adds a new `SecretKey::from_uniform_bytes` function that uses\r\nwide reduction. For constructions like signatures and KDFs that use\r\nhashing operations to produce scalar values, this function is used and\r\nthe underlying hashers are updated to produce 64-byte output in the case\r\nof `RistrettoSecretKey`.\r\n\r\nIt updates the Schnorr signature API to support raw signing and\r\nverification using challenge byte slices that are either canonical\r\nencodings or uniform. It renames several existing functions for clarity.\r\n\r\nIt corrects a few typos that were discovered along the way.\r\n\r\nCloses #189.\r\n\r\nBREAKING CHANGE: This changes the way that scalars are produced from\r\nbyte arrays, modifies the `SecretKey` trait and corresponding\r\n`RistrettoSecretKey` implementation, and updates the Schnorr signature\r\nAPI.","shortMessageHtmlLink":"feat!: differentiate scalar parsing from byte arrays (#194)"}},{"before":"97d3dee7033b2a8a43ef95ea0912269d043cc01a","after":"34d8ea5c7d95b1191bbbc283cc14dfe7a8438b8e","ref":"refs/heads/main","pushedAt":"2023-09-11T07:42:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"stringhandler","name":"stringhandler","path":"/stringhandler","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4200336?s=80&v=4"},"commit":{"message":"test: expand and clean up lints (#207)\n\nThere are currently several `clippy`\r\n[groups](https://github.com/rust-lang/rust-clippy#clippy) that are\r\nuseful, but are not included in `lints.toml`. This PR adds the default\r\n`clippy::all` group to the deny list, and cleans up some individual\r\nlints that are made redundant by this change. No code changes are needed\r\nas a result of this.","shortMessageHtmlLink":"test: expand and clean up lints (#207)"}},{"before":"74bda6e73f4e565175037615a0be1d7874fac566","after":"97d3dee7033b2a8a43ef95ea0912269d043cc01a","ref":"refs/heads/main","pushedAt":"2023-09-11T07:10:18.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"ci: update CI actions (#206)\n\nThis PR updates CI actions.\r\n\r\nBecause the `actions-rs` project is\r\n[unmaintained](https://github.com/actions-rs/toolchain/issues/216), this\r\nis replaced with the\r\n[maintained](https://github.com/dtolnay/rust-toolchain)\r\n`dtolnay/rust-toolchain` action. The outdated `checkout` action version\r\nis [updated](https://github.com/actions/checkout/releases/tag/v4.0.0).\r\nDocumentation builds are\r\n[flagged](https://doc.rust-lang.org/cargo/commands/cargo-doc.html#documentation-options)\r\nto avoid dependencies, which aren't needed.","shortMessageHtmlLink":"ci: update CI actions (#206)"}},{"before":"1e6f60319d483bb504bead04c4f8e37a6734b770","after":"74bda6e73f4e565175037615a0be1d7874fac566","ref":"refs/heads/main","pushedAt":"2023-09-11T07:06:34.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"test: replace usize with u64 (#203)\n\nSmall PR that makes sure this test runs on 32 bit and 64 bit machines","shortMessageHtmlLink":"test: replace usize with u64 (#203)"}},{"before":"2aa46d00f4a58ca99a93d9c84301a9d4f1b399a4","after":"1e6f60319d483bb504bead04c4f8e37a6734b770","ref":"refs/heads/main","pushedAt":"2023-08-21T06:37:20.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"feat: simplify zeroizing and add test to DHKE (#197)\n\nSimplifies the implementation of zeroizing support for Diffie-Hellman\r\nkey exchanges and improves test coverage.\r\n\r\nCurrently, the `DiffieHellmanSharedSecret` struct has manual\r\nimplementations of `zeroize` and `drop` to handle zeroizing. Now that we\r\nhave a more modern version of `zeroize` as a dependency, we can do\r\nbetter. This PR uses that crate's `Zeroize` and `ZeroizeOnDrop` derived\r\ntraits to handle this more cleanly. It also adds a sanity check that the\r\nbyte representations of both sides of a key exchange match, which\r\nimproves test coverage.\r\n\r\nPartially addresses #196.","shortMessageHtmlLink":"feat: simplify zeroizing and add test to DHKE (#197)"}},{"before":"2de9dc2de5f9ad78275dfd5fe5a5e3a886cdbfe4","after":"2aa46d00f4a58ca99a93d9c84301a9d4f1b399a4","ref":"refs/heads/main","pushedAt":"2023-08-21T06:36:24.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"chore: remove unused rewindable range proof code (#198)\n\nRemoves old rewindable range proof code that was unused.\r\n\r\nPartially addresses #196.","shortMessageHtmlLink":"chore: remove unused rewindable range proof code (#198)"}},{"before":"a0e9765d2b96a3f8c3bdb5c3c80ff3afd26ce97b","after":"2de9dc2de5f9ad78275dfd5fe5a5e3a886cdbfe4","ref":"refs/heads/main","pushedAt":"2023-08-10T11:13:11.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"chore: release 0.18.0 (#195)\n\n#\r\n[0.18.0](https://github.com/tari-project/tari-crypto/compare/v0.17.0...v0.18.0)\r\n(2023-08-10)\r\n\r\n\r\n## ⚠ BREAKING CHANGES\r\n\r\n* enable no_std support for tari_crypto (#191)\r\n* move the WASM and FFI builds to seperate Repos (#193)\r\n\r\n## Features\r\n\r\n* enable no_std support for tari_crypto\r\n([191](https://github.com/tari-project/tari-crypto/issues/191))\r\n([a0e9765](https://github.com/tari-project/tari-crypto/commit/a0e9765d2b96a3f8c3bdb5c3c80ff3afd26ce97b))\r\n* fix new_generator\r\n([192](https://github.com/tari-project/tari-crypto/issues/192))\r\n([0d463b0](https://github.com/tari-project/tari-crypto/commit/0d463b064e6e41c1c0d1ff2064afa0b3f7f6bac9))\r\n* move the WASM and FFI builds to seperate Repos\r\n([193](https://github.com/tari-project/tari-crypto/issues/193))\r\n([053119f](https://github.com/tari-project/tari-crypto/commit/053119f2110aaf3089c7b9df96f50b8cc8d3217a))\r\n* remove unused dalek rangeproof\r\n([184](https://github.com/tari-project/tari-crypto/issues/184))\r\n([d21cd37](https://github.com/tari-project/tari-crypto/commit/d21cd377616776743b6e33552000cfc9fc06c0bd))\r\n* update dependancies\r\n([185](https://github.com/tari-project/tari-crypto/issues/185))\r\n([4c2424f](https://github.com/tari-project/tari-crypto/commit/4c2424f2f0426f9ad4a55a9ed35ecd29fe87e0c7))\r\n* zeroize temporary scalar byte array\r\n([188](https://github.com/tari-project/tari-crypto/issues/188))\r\n([2147522](https://github.com/tari-project/tari-crypto/commit/2147522916cc5649ad6c96bcd3a66af439dddaf2))","shortMessageHtmlLink":"chore: release 0.18.0 (#195)"}},{"before":"053119f2110aaf3089c7b9df96f50b8cc8d3217a","after":"a0e9765d2b96a3f8c3bdb5c3c80ff3afd26ce97b","ref":"refs/heads/main","pushedAt":"2023-08-10T10:25:32.000Z","pushType":"pr_merge","commitsCount":13,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"feat!: enable no_std support for tari_crypto (#191)\n\nThis PR adds in no_std support for TariCrypto. \r\nThe following changes where made to enable this:\r\n- thiserror was swapped out for Snafu as thiserror does not support\r\nno_std while snafu does.\r\n- use std:: was changed to use core::\r\n- make all dependencies default-features = false\r\n- make BulletProofPlus an optional feature\r\n- make serde an optional feature\r\n- Make precomputed_tables optional as they require large internal memory\r\n- remove lazy_static as a dependency (replaced by one-cell)\r\n- changed sign message to use supplied RNG, and not thread_local\r\ninternally","shortMessageHtmlLink":"feat!: enable no_std support for tari_crypto (#191)"}},{"before":"d57eb076595c53861db518489b25a2fa4ca01b39","after":"053119f2110aaf3089c7b9df96f50b8cc8d3217a","ref":"refs/heads/main","pushedAt":"2023-08-08T08:36:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"stringhandler","name":"stringhandler","path":"/stringhandler","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4200336?s=80&v=4"},"commit":{"message":"feat!: move the WASM and FFI builds to seperate Repos (#193)\n\nThis PR moves out the WASM and FFI builds of TariCrypto to separate\r\nRepos.\r\nWASM: https://github.com/tari-project/tari-crypto-wasm\r\nFFI: https://github.com/tari-project/tari-crypto-ffi\r\n\r\nThis cleans up TariCrypto by moving out all optional compile features. \r\nThe WASM and FFI build require different features to work and both\r\ncannot work on the same build features. This makes TariCrypto, the WASM\r\nlib, and FFI lib cleaner. The WASM and FFI builds are just wrappers\r\naround the basic functionality of TariCrypto and don't add any new\r\nfunctionality making it easy to move them to their own repos.\r\n\r\nCurrently, the WASM and FFI builds are not used in any Tari project.","shortMessageHtmlLink":"feat!: move the WASM and FFI builds to seperate Repos (#193)"}},{"before":"0d463b064e6e41c1c0d1ff2064afa0b3f7f6bac9","after":"d57eb076595c53861db518489b25a2fa4ca01b39","ref":"refs/heads/main","pushedAt":"2023-08-08T07:05:56.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"chore: update dependencies (#187)\n\n- Updated \"tari_bulletproofs_plus\".\r\n- Updated \"tari_utilities\".","shortMessageHtmlLink":"chore: update dependencies (#187)"}},{"before":"2147522916cc5649ad6c96bcd3a66af439dddaf2","after":"0d463b064e6e41c1c0d1ff2064afa0b3f7f6bac9","ref":"refs/heads/main","pushedAt":"2023-08-07T14:19:45.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"feat: fix new_generator (#192)\n\n- Fixed `pub fn new_generator(label: &'static str)` too few bytes error\r\n(DigestTooShort)\r\n- Added a test case for `pub fn new_generator`","shortMessageHtmlLink":"feat: fix new_generator (#192)"}},{"before":"b88ce95b67d6fceb6c7985351552ed1903d482b9","after":"2147522916cc5649ad6c96bcd3a66af439dddaf2","ref":"refs/heads/main","pushedAt":"2023-08-03T14:54:12.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"feat: zeroize temporary scalar byte array (#188)\n\nCurrently, construction of a `RistrettoSecretKey` from a byte slice\r\ncreates a temporary array that is passed into the Ristretto constructor.\r\nThis PR zeroizes the array to reduce the risk of secret data exposure.","shortMessageHtmlLink":"feat: zeroize temporary scalar byte array (#188)"}},{"before":"4c2424f2f0426f9ad4a55a9ed35ecd29fe87e0c7","after":"b88ce95b67d6fceb6c7985351552ed1903d482b9","ref":"refs/heads/main","pushedAt":"2023-08-03T14:53:56.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"chore: fix a spurious lint (#190)\n\nThere's a warning about an allegedly suspicious borrow in one of the\r\nrange proof tests. It's likely [already\r\nfixed](https://github.com/rust-lang/rust/issues/112489), but easy enough\r\nto use the ampersand operator to clean up the warning.","shortMessageHtmlLink":"chore: fix a spurious lint (#190)"}},{"before":"d21cd377616776743b6e33552000cfc9fc06c0bd","after":"4c2424f2f0426f9ad4a55a9ed35ecd29fe87e0c7","ref":"refs/heads/main","pushedAt":"2023-07-18T09:29:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"stringhandler","name":"stringhandler","path":"/stringhandler","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4200336?s=80&v=4"},"commit":{"message":"feat: update dependancies (#185)\n\nUpdates the following dependencies:\r\ntari_utilities\r\ndigest\r\nblake2\r\nsha3\r\nbulletproofs_plus\r\ncurve25519-dalek\r\nlazy_static\r\nmerlin\r\nrand/rand-core\r\nborsh\r\n\r\nSome of these like digest and borsh require code changes. \r\n`Blake256` is now replaced with the raw type `Blake2b`","shortMessageHtmlLink":"feat: update dependancies (#185)"}},{"before":"37965d323e0d552145a05edf390e047892568c10","after":"d21cd377616776743b6e33552000cfc9fc06c0bd","ref":"refs/heads/main","pushedAt":"2023-07-17T09:09:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"stringhandler","name":"stringhandler","path":"/stringhandler","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4200336?s=80&v=4"},"commit":{"message":"feat: remove unused dalek rangeproof (#184)\n\nRemoves the Dalek rangeproof aka bulletproof from tari crypto. \r\nThis unused code points to an old unmaintained fork of the original\r\nDalek rangeproof.\r\nIn Tari we have moved on to only use BulletproofPlus which is a separate\r\ncrate.","shortMessageHtmlLink":"feat: remove unused dalek rangeproof (#184)"}},{"before":"90ad63d0517e2513644cfca2df5a93b7e93d6667","after":"37965d323e0d552145a05edf390e047892568c10","ref":"refs/heads/main","pushedAt":"2023-06-13T14:08:26.075Z","pushType":"push","commitsCount":1,"pusher":{"login":"stringhandler","name":"stringhandler","path":"/stringhandler","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4200336?s=80&v=4"},"commit":{"message":"v0.17.0","shortMessageHtmlLink":"v0.17.0"}},{"before":"8a0823ff690f35409b64ad85a064033706f17580","after":"90ad63d0517e2513644cfca2df5a93b7e93d6667","ref":"refs/heads/main","pushedAt":"2023-06-06T05:52:23.230Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"sdbondi","name":"Stan Bondi","path":"/sdbondi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1057902?s=80&v=4"},"commit":{"message":"feat!: expose secret key length as a constant (#181)\n\nCurrently, the `PublicKey` trait exposes the encoded key byte length via\r\nthe associated `KEY_LEN` constant, and also provides it via the\r\n`key_length` function. However, the `SecretKey` trait only exposes its\r\nencoded key byte length via the `key_length` function, which cannot be\r\nconstant. There are use cases where it's handy to get the key size at\r\ncompile time, particularly when you want to use arrays and avoid heap\r\nallocations.\r\n\r\nThis PR unifies the `PublicKey` and `SecretKey` traits by adding an\r\nassociated `KEY_LEN` constant to `SecretKey`. It then updates the\r\n`RistrettoSecretKey` implementation accordingly. This retains all\r\nexisting functionality, so the change is not breaking.","shortMessageHtmlLink":"feat!: expose secret key length as a constant (#181)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAERcDMigA","startCursor":null,"endCursor":null}},"title":"Activity · tari-project/tari-crypto"}