Skip to content

Commit

Permalink
digest v0.10 and crypto-common v0.1
Browse files Browse the repository at this point in the history
  • Loading branch information
newpavlov committed Dec 7, 2021
1 parent 88d5ea3 commit 2772960
Show file tree
Hide file tree
Showing 36 changed files with 1,806 additions and 1,519 deletions.
3 changes: 1 addition & 2 deletions .github/workflows/crypto-common.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
target: ${{ matrix.target }}
override: true
profile: minimal
- run: cargo build --no-default-features --release --target ${{ matrix.target }}
- run: cargo build --target ${{ matrix.target }}
test:
runs-on: ubuntu-latest
strategy:
Expand All @@ -52,6 +52,5 @@ jobs:
profile: minimal
- run: cargo check --all-features
- run: cargo test
- run: cargo test --features core-api
- run: cargo test --features std
- run: cargo test --all-features
60 changes: 0 additions & 60 deletions .github/workflows/crypto-mac.yml

This file was deleted.

14 changes: 7 additions & 7 deletions .github/workflows/digest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
target: ${{ matrix.target }}
override: true
profile: minimal
- run: cargo build --no-default-features --release --target ${{ matrix.target }}
- run: cargo build --target ${{ matrix.target }}
test:
runs-on: ubuntu-latest
strategy:
Expand All @@ -51,9 +51,9 @@ jobs:
override: true
profile: minimal
- run: cargo check --all-features
- run: cargo test --release
- run: cargo test --features core-api --release
- run: cargo test --features dev --release
- run: cargo test --features alloc --release
- run: cargo test --features std --release
- run: cargo test --all-features --release
- run: cargo test --no-default-features
- run: cargo test
- run: cargo test --features dev
- run: cargo test --features alloc
- run: cargo test --features std
- run: cargo test --all-features
49 changes: 14 additions & 35 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ members = [
"aead",
"cipher",
"crypto-common",
"crypto-mac",
"digest",
"password-hash",
"signature",
Expand Down
69 changes: 35 additions & 34 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,33 +1,32 @@
# RustCrypto: Traits [![Project Chat][chat-image]][chat-link] [![dependency status][deps-image]][deps-link]
# RustCrypto: Traits

[![Project Chat][chat-image]][chat-link] [![dependency status][deps-image]][deps-link] ![Apache2/MIT licensed][license-image]

Collection of traits which describe functionality of cryptographic primitives.

## Crates

| Crate name | Algorithm | Crates.io | Docs | Build Status |
|---------------------|-------------------------------|-----------|-------|--------------|
| [`aead`] | [Authenticated encryption] | [![crates.io](https://img.shields.io/crates/v/aead.svg)](https://crates.io/crates/aead) | [![Documentation](https://docs.rs/aead/badge.svg)](https://docs.rs/aead) | ![build](https://github.com/RustCrypto/traits/workflows/aead/badge.svg?branch=master&event=push) |
| [`async‑signature`] | [Digital signature] | [![crates.io](https://img.shields.io/crates/v/async-signature.svg)](https://crates.io/crates/async-signature) | [![Documentation](https://docs.rs/async-signature/badge.svg)](https://docs.rs/async-signature) | ![build](https://github.com/RustCrypto/traits/workflows/async-signature/badge.svg?branch=master&event=push) |
| [`cipher`] | [Block] and [stream cipher] | [![crates.io](https://img.shields.io/crates/v/cipher.svg)](https://crates.io/crates/cipher) | [![Documentation](https://docs.rs/cipher/badge.svg)](https://docs.rs/cipher) | ![build](https://github.com/RustCrypto/traits/workflows/cipher/badge.svg?branch=master&event=push) |
| [`crypto‑mac`] | [Message authentication code] | [![crates.io](https://img.shields.io/crates/v/crypto-mac.svg)](https://crates.io/crates/crypto-mac) | [![Documentation](https://docs.rs/crypto-mac/badge.svg)](https://docs.rs/crypto-mac) | ![build](https://github.com/RustCrypto/traits/workflows/crypto-mac/badge.svg?branch=master&event=push) |
| [`digest`] | [Cryptographic hash function] | [![crates.io](https://img.shields.io/crates/v/digest.svg)](https://crates.io/crates/digest) | [![Documentation](https://docs.rs/digest/badge.svg)](https://docs.rs/digest) | ![build](https://github.com/RustCrypto/traits/workflows/digest/badge.svg?branch=master&event=push) |
| [`elliptic‑curve`] | [Elliptic curve cryptography] | [![crates.io](https://img.shields.io/crates/v/elliptic-curve.svg)](https://crates.io/crates/elliptic-curve) | [![Documentation](https://docs.rs/elliptic-curve/badge.svg)](https://docs.rs/elliptic-curve) | ![build](https://github.com/RustCrypto/traits/workflows/elliptic-curve/badge.svg?branch=master&event=push) |
| [`password-hash`] | [Password hashing] | [![crates.io](https://img.shields.io/crates/v/password-hash.svg)](https://crates.io/crates/password-hash) | [![Documentation](https://docs.rs/password-hash/badge.svg)](https://docs.rs/password-hash) | ![build](https://github.com/RustCrypto/traits/workflows/password-hash/badge.svg?branch=master&event=push) |
| [`signature`] | [Digital signature] | [![crates.io](https://img.shields.io/crates/v/signature.svg)](https://crates.io/crates/signature) | [![Documentation](https://docs.rs/signature/badge.svg)](https://docs.rs/signature) | ![build](https://github.com/RustCrypto/traits/workflows/signature/badge.svg?branch=master&event=push) |
| [`universal‑hash`] | [Universal hash function] | [![crates.io](https://img.shields.io/crates/v/universal-hash.svg)](https://crates.io/crates/universal-hash) | [![Documentation](https://docs.rs/universal-hash/badge.svg)](https://docs.rs/universal-hash) | ![build](https://github.com/RustCrypto/traits/workflows/universal-hash/badge.svg?branch=master&event=push) |

### Additional crates
| Name | Algorithm | Crates.io | Docs | MSRV |
|---------------------|-----------|:---------:|:-----:|:----:|
| [`aead`] | [Authenticated encryption] | [![crates.io](https://img.shields.io/crates/v/aead.svg)](https://crates.io/crates/aead) | [![Documentation](https://docs.rs/aead/badge.svg)](https://docs.rs/aead) | ![MSRV 1.41][msrv-1.41] |
| [`async‑signature`] | [Digital signature] | [![crates.io](https://img.shields.io/crates/v/async-signature.svg)](https://crates.io/crates/async-signature) | [![Documentation](https://docs.rs/async-signature/badge.svg)](https://docs.rs/async-signature) | ![MSRV 1.41][msrv-1.41] |
| [`cipher`] | [Block] and [stream cipher] | [![crates.io](https://img.shields.io/crates/v/cipher.svg)](https://crates.io/crates/cipher) | [![Documentation](https://docs.rs/cipher/badge.svg)](https://docs.rs/cipher) | ![MSRV 1.41][msrv-1.41] |
| [`crypto‑common`] | Common cryptographic traits | [![crates.io](https://img.shields.io/crates/v/crypto-common.svg)](https://crates.io/crates/crypto-common) | [![Documentation](https://docs.rs/crypto-common/badge.svg)](https://docs.rs/crypto-common) | ![MSRV 1.41][msrv-1.41] |
| [`digest`] | [Cryptographic hash function] | [![crates.io](https://img.shields.io/crates/v/digest.svg)](https://crates.io/crates/digest) | [![Documentation](https://docs.rs/digest/badge.svg)](https://docs.rs/digest) | ![MSRV 1.41][msrv-1.41] |
| [`elliptic‑curve`] | [Elliptic curve cryptography] | [![crates.io](https://img.shields.io/crates/v/elliptic-curve.svg)](https://crates.io/crates/elliptic-curve) | [![Documentation](https://docs.rs/elliptic-curve/badge.svg)](https://docs.rs/elliptic-curve) | ![MSRV 1.56][msrv-1.56] |
| [`password-hash`] | [Password hashing] | [![crates.io](https://img.shields.io/crates/v/password-hash.svg)](https://crates.io/crates/password-hash) | [![Documentation](https://docs.rs/password-hash/badge.svg)](https://docs.rs/password-hash) | ![MSRV 1.47][msrv-1.47] |
| [`signature`] | [Digital signature] | [![crates.io](https://img.shields.io/crates/v/signature.svg)](https://crates.io/crates/signature) | [![Documentation](https://docs.rs/signature/badge.svg)](https://docs.rs/signature) | ![MSRV 1.41][msrv-1.41] |
| [`universal‑hash`] | [Universal hash function] | [![crates.io](https://img.shields.io/crates/v/universal-hash.svg)](https://crates.io/crates/universal-hash) | [![Documentation](https://docs.rs/universal-hash/badge.svg)](https://docs.rs/universal-hash) | ![MSRV 1.41][msrv-1.41] |

| Crate name | Description | Crates.io | Docs | Build Status |
|------------|-------------------------|-----------|-------|--------------|
| [`crypto`] | Facade for trait crates | [![crates.io](https://img.shields.io/crates/v/crypto.svg)](https://crates.io/crates/crypto) | [![Documentation](https://docs.rs/crypto/badge.svg)](https://docs.rs/crypto) | ![build](https://github.com/RustCrypto/traits/workflows/crypto/badge.svg?branch=master&event=push)
### Additional Crates

### Minimum Supported Rust Version
| Crate name | Description | Crates.io | Docs | MSRV |
|------------|-------------------------|:---------:|:-----:|:----:|
| [`crypto`] | Facade for trait crates | [![crates.io](https://img.shields.io/crates/v/crypto.svg)](https://crates.io/crates/crypto) | [![Documentation](https://docs.rs/crypto/badge.svg)](https://docs.rs/crypto) | ![MSRV 1.56][msrv-1.56] |

All crates in this repository support **Rust 1.41** or higher unless otherwise noted.
### Minimum Supported Rust Version (MSRV) Policy

In future minimally supported version of Rust can be changed, but it will be done
with the minor version bump.
MSRV bumps are considered breaking changes and will be performed only with minor version bump.

## License

Expand All @@ -40,29 +39,31 @@ at your option.

### Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

[//]: # (badges)

[chat-image]: https://img.shields.io/badge/zulip-join_chat-blue.svg
[chat-link]: https://rustcrypto.zulipchat.com/
[license-image]: https://img.shields.io/badge/license-Apache2.0/MIT-blue.svg
[deps-image]: https://deps.rs/repo/github/RustCrypto/traits/status.svg
[deps-link]: https://deps.rs/repo/github/RustCrypto/traits
[msrv-1.41]: https://img.shields.io/badge/rustc-1.41.0+-blue.svg
[msrv-1.47]: https://img.shields.io/badge/rustc-1.47.0+-blue.svg
[msrv-1.56]: https://img.shields.io/badge/rustc-1.56.0+-blue.svg

[//]: # (crates)

[`aead`]: https://github.com/RustCrypto/traits/tree/master/aead
[`async‑signature`]: https://github.com/RustCrypto/traits/tree/master/signature/async
[`cipher`]: https://github.com/RustCrypto/traits/tree/master/cipher
[`crypto‑mac`]: https://github.com/RustCrypto/traits/tree/master/crypto-mac
[`crypto`]: https://github.com/RustCrypto/traits/tree/master/crypto
[`digest`]: https://github.com/RustCrypto/traits/tree/master/digest
[`elliptic‑curve`]: https://github.com/RustCrypto/traits/tree/master/elliptic-curve
[`password-hash`]: https://github.com/RustCrypto/traits/tree/master/password-hash
[`signature`]: https://github.com/RustCrypto/traits/tree/master/signature
[`universal‑hash`]: https://github.com/RustCrypto/traits/tree/master/universal-hash
[`aead`]: ./aead
[`async‑signature`]: ./signature/async
[`cipher`]: ./cipher
[`crypto‑common`]: ./crypto-common
[`crypto`]: ./crypto
[`digest`]: ./digest
[`elliptic‑curve`]: ./elliptic-curve
[`password-hash`]: ./password-hash
[`signature`]: ./signature
[`universal‑hash`]: ./universal-hash

[//]: # (algorithms)

Expand Down
6 changes: 1 addition & 5 deletions cipher/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,13 @@ categories = ["cryptography", "no-std"]

[dependencies]
generic-array = "0.14"
crypto-common = { version = "=0.1.0-pre", path = "../crypto-common" }
crypto-common = { version = "0.1", path = "../crypto-common" }

# optional dependencies
block-buffer = { version = "=0.10.0-pre.4", features = ["block-padding"], optional = true }
blobby = { version = "0.3", optional = true }
rand_core = { version = "0.6", optional = true }

[features]
default = ["mode_wrapper"]
std = ["crypto-common/std", "rand_core/std"]
mode_wrapper = ["block-buffer"]
dev = ["blobby"]

[package.metadata.docs.rs]
Expand Down
9 changes: 9 additions & 0 deletions crypto-common/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## 0.1.0 (2021-12-07)
- Initial release
6 changes: 2 additions & 4 deletions crypto-common/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
name = "crypto-common"
description = "Common cryptographic traits"
version = "0.1.0-pre"
version = "0.1.0"
authors = ["RustCrypto Developers"]
license = "MIT OR Apache-2.0"
readme = "README.md"
Expand All @@ -13,9 +13,7 @@ categories = ["cryptography", "no-std"]

[dependencies]
generic-array = "0.14"
block-buffer = { version = "0.10.0-pre.2", optional = true }
rand_core = { version = "0.6", optional = true }

[features]
block-padding = ["block-buffer/block-padding"]
core-api = ["block-buffer"]
std = []
Loading

0 comments on commit 2772960

Please sign in to comment.