Linux vmi284606.contaboserver.net 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.57 (Ubuntu)
: 167.86.127.34 | : 216.73.217.51
Cant Read [ /etc/named.conf ]
7.2.24-0ubuntu0.18.04.17
root
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
local /
go /
src /
crypto /
aes /
[ HOME SHELL ]
Name
Size
Permission
Action
aes_gcm.go
5.72
KB
-rw-r--r--
aes_test.go
11.3
KB
-rw-r--r--
asm_amd64.s
5.4
KB
-rw-r--r--
asm_arm64.s
6.86
KB
-rw-r--r--
asm_ppc64le.s
20.17
KB
-rw-r--r--
asm_s390x.s
4.38
KB
-rw-r--r--
block.go
6.5
KB
-rw-r--r--
cbc_s390x.go
1.57
KB
-rw-r--r--
cipher.go
1.85
KB
-rw-r--r--
cipher_asm.go
2.32
KB
-rw-r--r--
cipher_generic.go
740
B
-rw-r--r--
cipher_ppc64le.go
2.07
KB
-rw-r--r--
cipher_s390x.go
2.6
KB
-rw-r--r--
const.go
29.32
KB
-rw-r--r--
ctr_s390x.go
2.44
KB
-rw-r--r--
gcm_amd64.s
23.42
KB
-rw-r--r--
gcm_arm64.s
21.52
KB
-rw-r--r--
gcm_ppc64le.go
6.7
KB
-rw-r--r--
gcm_ppc64le.s
12.78
KB
-rw-r--r--
gcm_s390x.go
11.35
KB
-rw-r--r--
modes.go
1.15
KB
-rw-r--r--
modes_test.go
3.48
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : ctr_s390x.go
// Copyright 2016 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 import ( "crypto/cipher" "crypto/internal/subtle" "encoding/binary" ) // Assert that aesCipherAsm implements the ctrAble interface. var _ ctrAble = (*aesCipherAsm)(nil) // xorBytes xors the contents of a and b and places the resulting values into // dst. If a and b are not the same length then the number of bytes processed // will be equal to the length of shorter of the two. Returns the number // of bytes processed. //go:noescape func xorBytes(dst, a, b []byte) int // streamBufferSize is the number of bytes of encrypted counter values to cache. const streamBufferSize = 32 * BlockSize type aesctr struct { block *aesCipherAsm // block cipher ctr [2]uint64 // next value of the counter (big endian) buffer []byte // buffer for the encrypted counter values storage [streamBufferSize]byte // array backing buffer slice } // NewCTR returns a Stream which encrypts/decrypts using the AES block // cipher in counter mode. The length of iv must be the same as BlockSize. func (c *aesCipherAsm) NewCTR(iv []byte) cipher.Stream { if len(iv) != BlockSize { panic("cipher.NewCTR: IV length must equal block size") } var ac aesctr ac.block = c ac.ctr[0] = binary.BigEndian.Uint64(iv[0:]) // high bits ac.ctr[1] = binary.BigEndian.Uint64(iv[8:]) // low bits ac.buffer = ac.storage[:0] return &ac } func (c *aesctr) refill() { // Fill up the buffer with an incrementing count. c.buffer = c.storage[:streamBufferSize] c0, c1 := c.ctr[0], c.ctr[1] for i := 0; i < streamBufferSize; i += 16 { binary.BigEndian.PutUint64(c.buffer[i+0:], c0) binary.BigEndian.PutUint64(c.buffer[i+8:], c1) // Increment in big endian: c0 is high, c1 is low. c1++ if c1 == 0 { // add carry c0++ } } c.ctr[0], c.ctr[1] = c0, c1 // Encrypt the buffer using AES in ECB mode. cryptBlocks(c.block.function, &c.block.key[0], &c.buffer[0], &c.buffer[0], streamBufferSize) } func (c *aesctr) XORKeyStream(dst, src []byte) { if len(dst) < len(src) { panic("crypto/cipher: output smaller than input") } if subtle.InexactOverlap(dst[:len(src)], src) { panic("crypto/cipher: invalid buffer overlap") } for len(src) > 0 { if len(c.buffer) == 0 { c.refill() } n := xorBytes(dst, src, c.buffer) c.buffer = c.buffer[n:] src = src[n:] dst = dst[n:] } }
Close