Skip to content

Commit

Permalink
Release 2.2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
leif-ibsen committed Jan 30, 2024
1 parent dfd04db commit c55effd
Show file tree
Hide file tree
Showing 47 changed files with 56 additions and 55 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
SwiftChaChaPoly is compatible with Apple's CryptoKit framework as the following examples show:

### Example 1: SwiftChaChaPoly encrypts, CryptoKit opens
```Swift
```swift
import CryptoKit
import SwiftChaChaPoly

Expand All @@ -28,11 +28,11 @@ let pt = try CryptoKit.ChaChaPoly.open(sealedBox, using: ckKey, authenticating:
print(String(bytes: pt, encoding: .utf8)!)
```
giving:
```Swift
```swift
Hi, there
```
### Example 2: CrypotoKit seals, SwiftChaChaPoly decrypts
```Swift
```swift
import CryptoKit
import SwiftChaChaPoly

Expand All @@ -55,6 +55,6 @@ let ok = chacha.decrypt(&ct, Bytes(sealedBox.tag), aad)
print(String(bytes: ct, encoding: .utf8)!)
```
giving:
```Swift
```swift
Hi, there
```
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

##
This example is from section 2.8.2 in [RFC-8439].
```Swift
```swift
import SwiftChaChaPoly

let key: Bytes = [
Expand All @@ -23,7 +23,7 @@ let ok = chacha.decrypt(&bytes, tag, aad)
print(ok && bytes == Bytes(text.utf8) ? "Ok" : "Fail")
```
Giving
```Swift
```swift
[26, 225, 11, 89, 79, 9, 226, 106, 126, 144, 46, 203, 208, 96, 6, 145]
Ok
```
11 changes: 6 additions & 5 deletions Sources/SwiftChaChaPoly/SwiftChaChaPoly.docc/Articles/Usage.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@

##

In your project Package.swift file add a dependency like<br/>

dependencies: [
.package(url: "https://github.com/leif-ibsen/SwiftChaChaPoly", from: "2.1.0"),
]
In your project Package.swift file add a dependency like
```swift
dependencies: [
.package(url: "https://github.com/leif-ibsen/SwiftChaChaPoly", from: "2.1.0"),
]
```
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"role":"collection","externalID":"SwiftChaChaPoly","modules":[{"name":"SwiftChaChaPoly"}],"symbolKind":"module","roleHeading":"Framework","title":"SwiftChaChaPoly"},"primaryContentSections":[{"kind":"content","content":[{"level":2,"type":"heading","anchor":"Overview","text":"Overview"},{"type":"paragraph","inlineContent":[{"text":"SwiftChaChaPoly implements Authenticated Encryption with Associated Data as defined in [RFC-8439].","type":"text"},{"text":" ","type":"text"},{"text":"It is based on the ChaCha20 stream cipher and Poly1305 authentication.","type":"text"}]},{"style":"important","name":"Important","content":[{"type":"paragraph","inlineContent":[{"text":"","type":"text"},{"text":" ","type":"text"},{"type":"text","text":"SwiftChaChaPoly requires Swift 5.0. It also requires that the Int and UInt types be 64 bit types."}]}],"type":"aside"}]}],"identifier":{"url":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly","interfaceLanguage":"swift"},"hierarchy":{"paths":[[]]},"variants":[{"paths":["\/documentation\/swiftchachapoly"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","topicSections":[{"identifiers":["doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Usage","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Example","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/CryptoKit","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Performance","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Dependencies","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/References"]},{"title":"Structures","identifiers":["doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/ChaChaPoly"]},{"identifiers":["doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Byte","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Bytes"],"title":"Type Aliases"}],"sections":[],"references":{"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Dependencies":{"abstract":[],"url":"\/documentation\/swiftchachapoly\/dependencies","type":"topic","title":"Dependencies","kind":"article","role":"article","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Dependencies"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Bytes":{"navigatorTitle":[{"text":"Bytes","kind":"identifier"}],"url":"\/documentation\/swiftchachapoly\/bytes","abstract":[{"text":"Array of unsigned 8 bit values","type":"text"}],"identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Bytes","title":"Bytes","role":"symbol","fragments":[{"kind":"keyword","text":"typealias"},{"kind":"text","text":" "},{"text":"Bytes","kind":"identifier"}],"kind":"symbol","type":"topic"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly":{"identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly","title":"SwiftChaChaPoly","url":"\/documentation\/swiftchachapoly","role":"collection","kind":"symbol","abstract":[],"type":"topic"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/References":{"title":"References","kind":"article","role":"article","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/References","abstract":[],"url":"\/documentation\/swiftchachapoly\/references","type":"topic"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Byte":{"navigatorTitle":[{"kind":"identifier","text":"Byte"}],"kind":"symbol","type":"topic","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Byte","abstract":[{"text":"Unsigned 8 bit value","type":"text"}],"role":"symbol","title":"Byte","fragments":[{"text":"typealias","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Byte"}],"url":"\/documentation\/swiftchachapoly\/byte"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/ChaChaPoly":{"identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/ChaChaPoly","url":"\/documentation\/swiftchachapoly\/chachapoly","abstract":[{"type":"text","text":"A ChaChaPoly instance encrypts and decrypts data with authentication for a given key and nonce"}],"role":"symbol","title":"ChaChaPoly","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"ChaChaPoly","kind":"identifier"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"ChaChaPoly"}]},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Performance":{"url":"\/documentation\/swiftchachapoly\/performance","abstract":[],"identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Performance","kind":"article","type":"topic","role":"article","title":"Performance"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Usage":{"type":"topic","title":"Usage","kind":"article","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Usage","abstract":[],"role":"article","url":"\/documentation\/swiftchachapoly\/usage"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Example":{"identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Example","kind":"article","url":"\/documentation\/swiftchachapoly\/example","abstract":[],"type":"topic","role":"article","title":"Example"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/CryptoKit":{"role":"article","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/CryptoKit","title":"CryptoKit Compatibility","abstract":[],"kind":"article","url":"\/documentation\/swiftchachapoly\/cryptokit","type":"topic"}}}
{"metadata":{"externalID":"SwiftChaChaPoly","title":"SwiftChaChaPoly","roleHeading":"Framework","modules":[{"name":"SwiftChaChaPoly"}],"role":"collection","symbolKind":"module"},"primaryContentSections":[{"content":[{"text":"Overview","level":2,"type":"heading","anchor":"Overview"},{"type":"paragraph","inlineContent":[{"text":"SwiftChaChaPoly implements Authenticated Encryption with Associated Data as defined in [RFC-8439].","type":"text"},{"text":" ","type":"text"},{"text":"It is based on the ChaCha20 stream cipher and Poly1305 authentication.","type":"text"}]},{"name":"Important","style":"important","content":[{"inlineContent":[{"text":"","type":"text"},{"text":" ","type":"text"},{"type":"text","text":"SwiftChaChaPoly requires Swift 5.0. It also requires that the Int and UInt types be 64 bit types."}],"type":"paragraph"}],"type":"aside"}],"kind":"content"}],"kind":"symbol","sections":[],"topicSections":[{"identifiers":["doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Usage","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Example","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/CryptoKit","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Performance","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Dependencies","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/References"]},{"identifiers":["doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/ChaChaPoly"],"title":"Structures"},{"identifiers":["doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Byte","doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Bytes"],"title":"Type Aliases"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/swiftchachapoly"]}],"hierarchy":{"paths":[[]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Bytes":{"identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Bytes","type":"topic","abstract":[{"type":"text","text":"Array of unsigned 8 bit values"}],"role":"symbol","title":"Bytes","navigatorTitle":[{"text":"Bytes","kind":"identifier"}],"url":"\/documentation\/swiftchachapoly\/bytes","kind":"symbol","fragments":[{"kind":"keyword","text":"typealias"},{"kind":"text","text":" "},{"text":"Bytes","kind":"identifier"}]},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/References":{"title":"References","type":"topic","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/References","abstract":[],"role":"article","kind":"article","url":"\/documentation\/swiftchachapoly\/references"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Performance":{"type":"topic","role":"article","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Performance","title":"Performance","kind":"article","url":"\/documentation\/swiftchachapoly\/performance","abstract":[]},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Byte":{"title":"Byte","abstract":[{"type":"text","text":"Unsigned 8 bit value"}],"identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Byte","type":"topic","role":"symbol","fragments":[{"text":"typealias","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Byte"}],"url":"\/documentation\/swiftchachapoly\/byte","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Byte"}]},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/ChaChaPoly":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"ChaChaPoly"}],"navigatorTitle":[{"text":"ChaChaPoly","kind":"identifier"}],"kind":"symbol","abstract":[{"text":"A ChaChaPoly instance encrypts and decrypts data with authentication for a given key and nonce","type":"text"}],"url":"\/documentation\/swiftchachapoly\/chachapoly","title":"ChaChaPoly","type":"topic","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/ChaChaPoly","role":"symbol"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Dependencies":{"url":"\/documentation\/swiftchachapoly\/dependencies","type":"topic","role":"article","abstract":[],"kind":"article","title":"Dependencies","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Dependencies"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/CryptoKit":{"url":"\/documentation\/swiftchachapoly\/cryptokit","type":"topic","role":"article","abstract":[],"kind":"article","title":"CryptoKit Compatibility","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/CryptoKit"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Usage":{"url":"\/documentation\/swiftchachapoly\/usage","type":"topic","role":"article","abstract":[],"kind":"article","title":"Usage","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Usage"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly":{"kind":"symbol","abstract":[],"url":"\/documentation\/swiftchachapoly","title":"SwiftChaChaPoly","type":"topic","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly","role":"collection"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Example":{"kind":"article","title":"Example","url":"\/documentation\/swiftchachapoly\/example","role":"article","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Example","abstract":[],"type":"topic"}}}
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"variants":[{"paths":["\/documentation\/swiftchachapoly\/byte"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Byte"},"metadata":{"modules":[{"name":"SwiftChaChaPoly"}],"title":"Byte","symbolKind":"typealias","role":"symbol","roleHeading":"Type Alias","externalID":"s:08SwiftChaB4Poly4Bytea","fragments":[{"kind":"keyword","text":"typealias"},{"kind":"text","text":" "},{"text":"Byte","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Byte"}]},"abstract":[{"type":"text","text":"Unsigned 8 bit value"}],"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"typealias"},{"kind":"text","text":" "},{"text":"Byte","kind":"identifier"},{"text":" = ","kind":"text"},{"preciseIdentifier":"s:s5UInt8V","kind":"typeIdentifier","text":"UInt8"}],"languages":["swift"],"platforms":["macOS"]}]}],"kind":"symbol","sections":[],"references":{"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Byte":{"navigatorTitle":[{"kind":"identifier","text":"Byte"}],"kind":"symbol","type":"topic","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Byte","abstract":[{"text":"Unsigned 8 bit value","type":"text"}],"role":"symbol","title":"Byte","fragments":[{"text":"typealias","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Byte"}],"url":"\/documentation\/swiftchachapoly\/byte"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly":{"identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly","title":"SwiftChaChaPoly","url":"\/documentation\/swiftchachapoly","role":"collection","kind":"symbol","abstract":[],"type":"topic"}}}
{"schemaVersion":{"major":0,"minor":3,"patch":0},"variants":[{"paths":["\/documentation\/swiftchachapoly\/byte"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"metadata":{"title":"Byte","navigatorTitle":[{"text":"Byte","kind":"identifier"}],"modules":[{"name":"SwiftChaChaPoly"}],"role":"symbol","fragments":[{"text":"typealias","kind":"keyword"},{"kind":"text","text":" "},{"text":"Byte","kind":"identifier"}],"roleHeading":"Type Alias","externalID":"s:08SwiftChaB4Poly4Bytea","symbolKind":"typealias"},"identifier":{"url":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Byte","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly"]]},"abstract":[{"text":"Unsigned 8 bit value","type":"text"}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"typealias","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Byte"},{"kind":"text","text":" = "},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"kind":"symbol","references":{"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Byte":{"title":"Byte","abstract":[{"type":"text","text":"Unsigned 8 bit value"}],"identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Byte","type":"topic","role":"symbol","fragments":[{"text":"typealias","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Byte"}],"url":"\/documentation\/swiftchachapoly\/byte","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Byte"}]},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly":{"kind":"symbol","abstract":[],"url":"\/documentation\/swiftchachapoly","title":"SwiftChaChaPoly","type":"topic","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly","role":"collection"}}}
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"metadata":{"title":"Bytes","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Bytes"}],"fragments":[{"kind":"keyword","text":"typealias"},{"kind":"text","text":" "},{"kind":"identifier","text":"Bytes"}],"externalID":"s:08SwiftChaB4Poly5Bytesa","symbolKind":"typealias","modules":[{"name":"SwiftChaChaPoly"}],"roleHeading":"Type Alias"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"typealias","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Bytes"},{"kind":"text","text":" = ["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":"]"}],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly"]]},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Bytes","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/swiftchachapoly\/bytes"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"type":"text","text":"Array of unsigned 8 bit values"}],"sections":[],"references":{"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly":{"url":"\/documentation\/swiftchachapoly","abstract":[],"kind":"symbol","type":"topic","title":"SwiftChaChaPoly","role":"collection","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Bytes":{"url":"\/documentation\/swiftchachapoly\/bytes","abstract":[{"type":"text","text":"Array of unsigned 8 bit values"}],"kind":"symbol","type":"topic","title":"Bytes","fragments":[{"kind":"keyword","text":"typealias"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Bytes"}],"role":"symbol","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Bytes","navigatorTitle":[{"kind":"identifier","text":"Bytes"}]}}}
{"abstract":[{"type":"text","text":"Array of unsigned 8 bit values"}],"variants":[{"paths":["\/documentation\/swiftchachapoly\/bytes"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"roleHeading":"Type Alias","fragments":[{"kind":"keyword","text":"typealias"},{"text":" ","kind":"text"},{"text":"Bytes","kind":"identifier"}],"symbolKind":"typealias","title":"Bytes","navigatorTitle":[{"kind":"identifier","text":"Bytes"}],"role":"symbol","externalID":"s:08SwiftChaB4Poly5Bytesa","modules":[{"name":"SwiftChaChaPoly"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"typealias","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Bytes","kind":"identifier"},{"text":" = [","kind":"text"},{"preciseIdentifier":"s:s5UInt8V","kind":"typeIdentifier","text":"UInt8"},{"text":"]","kind":"text"}],"languages":["swift"]}]}],"sections":[],"hierarchy":{"paths":[["doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly"]]},"identifier":{"url":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Bytes","interfaceLanguage":"swift"},"references":{"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly":{"kind":"symbol","abstract":[],"url":"\/documentation\/swiftchachapoly","title":"SwiftChaChaPoly","type":"topic","identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly","role":"collection"},"doc://SwiftChaChaPoly/documentation/SwiftChaChaPoly/Bytes":{"identifier":"doc:\/\/SwiftChaChaPoly\/documentation\/SwiftChaChaPoly\/Bytes","type":"topic","abstract":[{"type":"text","text":"Array of unsigned 8 bit values"}],"role":"symbol","title":"Bytes","navigatorTitle":[{"text":"Bytes","kind":"identifier"}],"url":"\/documentation\/swiftchachapoly\/bytes","kind":"symbol","fragments":[{"kind":"keyword","text":"typealias"},{"kind":"text","text":" "},{"text":"Bytes","kind":"identifier"}]}}}
Loading

0 comments on commit c55effd

Please sign in to comment.