Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
46f81a5
wip: update crypto to go 1.24.0
hdm Feb 16, 2025
f51c60e
imports: first batch of cleanup
hdm Feb 17, 2025
0d804ef
wip
hdm Feb 24, 2025
25d53df
byteorder fixes
hdm Jun 30, 2025
adc75f5
remove sysrand
hdm Jun 30, 2025
7c79d89
remove dit
hdm Jun 30, 2025
1918a7a
omit rand unused rand bits
hdm Jun 30, 2025
d3684c1
small bugfixes, more to go
hdm Jul 27, 2025
6e34c7a
add obscuretestdata
hdm Jul 27, 2025
b80007a
merge back zcrypto changes
hdm Jul 27, 2025
c6df527
merge back excrypto work
hdm Jul 27, 2025
4753732
fix various tests
hdm Jul 27, 2025
edcabcc
enable small rsa keys
hdm Jul 27, 2025
f1e408b
update tests
hdm Jul 27, 2025
2632bd5
fix missing validation level
hdm Jul 27, 2025
a4217b7
x509: permissive policy parsing
hdm Jul 27, 2025
692096a
merging
hdm Jul 27, 2025
3f08417
merge
hdm Jul 27, 2025
40e7794
merge
hdm Jul 27, 2025
3e2d1ec
tests
hdm Jul 27, 2025
2fb33f3
go mod
hdm Jul 27, 2025
70b0331
switch to stdlib-compat distinguished name formatting
hdm Jul 27, 2025
1224e67
update tests
hdm Jul 27, 2025
46be45a
test fixes
hdm Jul 27, 2025
f8a2a59
wip
hdm Jul 27, 2025
24f5215
more fixes
hdm Jul 27, 2025
a6011dc
trim debug
hdm Jul 27, 2025
91d7ede
minor tweaks
hdm Jul 27, 2025
3ca014e
update test data
hdm Jul 27, 2025
b25930f
wip
hdm Jul 27, 2025
3624867
wip
hdm Jul 27, 2025
ea526c3
wip
hdm Jul 27, 2025
2ed618d
wip
hdm Jul 27, 2025
396f696
merge internal/cpu
hdm Jul 27, 2025
16253a2
vendor upstream "hash"
hdm Jul 28, 2025
7c635f1
restore files
hdm Jul 28, 2025
7452c77
spot fixes
hdm Jul 28, 2025
f802ed1
wip
hdm Jul 28, 2025
2809b59
wip
hdm Jul 28, 2025
364c445
bump deps
hdm Feb 24, 2025
dab84cf
bump xcrypto diffs
hdm Mar 6, 2025
7896fb8
merge
hdm Nov 1, 2025
d5e02e2
merge
hdm Apr 1, 2025
9996687
build(deps): bump github.com/google/go-cmp from 0.6.0 to 0.7.0 (#24)
dependabot[bot] Apr 1, 2025
017930f
bump deps
hdm Apr 7, 2025
559575c
exp: option to not wait for channel open replies
hdm Apr 24, 2025
05b7ea6
merge
hdm Apr 24, 2025
796ebb0
remove debugging leftovers
hdm Apr 24, 2025
590d01a
add BuildChannelRequestString
hdm Apr 26, 2025
41bde72
deps: bump
hdm May 21, 2025
da728d6
build(deps): bump golang.org/x/crypto from 0.38.0 to 0.39.0 (#36)
dependabot[bot] Jun 29, 2025
aa67e34
build(deps): bump golang.org/x/crypto from 0.39.0 to 0.41.0 (#42)
dependabot[bot] Aug 26, 2025
4626431
merge
hdm Nov 1, 2025
f02f780
merge
hdm Nov 1, 2025
fadafaf
merge
hdm Nov 1, 2025
0fcd013
build(deps): bump github.com/stretchr/testify from 1.10.0 to 1.11.1 (…
dependabot[bot] Sep 15, 2025
5b8761e
fix(x509): mark dirNameTag as constructed in parseNameConstraintsExte…
MichaelWaters001 Oct 21, 2025
2527950
wip
hdm Nov 3, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Empty file removed crypto/aes/_asm/gcm/go.mod
Empty file.
Empty file removed crypto/aes/_asm/gcm/go.sum
Empty file.
Empty file removed crypto/aes/_asm/standard/go.mod
Empty file.
Empty file removed crypto/aes/_asm/standard/go.sum
Empty file.
49 changes: 49 additions & 0 deletions crypto/aes/aes.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

// Package aes implements AES encryption (formerly Rijndael), as defined in
// U.S. Federal Information Processing Standards Publication 197.
//
// The AES operations in this package are not implemented using constant-time algorithms.
// An exception is when running on systems with enabled hardware support for AES
// that makes these operations constant-time. Examples include amd64 systems using AES-NI
// extensions and s390x systems using Message-Security-Assist extensions.
// On such systems, when the result of NewCipher is passed to cipher.NewGCM,
// the GHASH operation used by GCM is also constant-time.
package aes

import (
"strconv"

"github.com/runZeroInc/excrypto/crypto/cipher"
"github.com/runZeroInc/excrypto/crypto/internal/boring"
"github.com/runZeroInc/excrypto/crypto/internal/fips140/aes"
)

// The AES block size in bytes.
const BlockSize = 16

type KeySizeError int

func (k KeySizeError) Error() string {
return "crypto/aes: invalid key size " + strconv.Itoa(int(k))
}

// NewCipher creates and returns a new [cipher.Block].
// The key argument must be the AES key,
// either 16, 24, or 32 bytes to select
// AES-128, AES-192, or AES-256.
func NewCipher(key []byte) (cipher.Block, error) {
k := len(key)
switch k {
default:
return nil, KeySizeError(k)
case 16, 24, 32:
break
}
if boring.Enabled {
return boring.NewAESCipher(key)
}
return aes.New(key)
}
185 changes: 0 additions & 185 deletions crypto/aes/aes_gcm.go

This file was deleted.

Loading