Fix exchange code not giving sig
This commit is contained in:
parent
20cbc92e7f
commit
efbd464bbb
|
@ -1,6 +1,7 @@
|
||||||
package aid
|
package aid
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"crypto"
|
||||||
"crypto/rand"
|
"crypto/rand"
|
||||||
"crypto/rsa"
|
"crypto/rsa"
|
||||||
"crypto/sha256"
|
"crypto/sha256"
|
||||||
|
@ -17,7 +18,7 @@ type keyPair struct {
|
||||||
var KeyPair = GeneratePublicPrivateKeyPair()
|
var KeyPair = GeneratePublicPrivateKeyPair()
|
||||||
|
|
||||||
func GeneratePublicPrivateKeyPair() keyPair {
|
func GeneratePublicPrivateKeyPair() keyPair {
|
||||||
privateKey, _ := rsa.GenerateKey(rand.Reader, 2048)
|
privateKey, _ := rsa.GenerateKey(rand.Reader, 4096)
|
||||||
publicKey := privateKey.PublicKey
|
publicKey := privateKey.PublicKey
|
||||||
|
|
||||||
return keyPair{
|
return keyPair{
|
||||||
|
@ -28,7 +29,7 @@ func GeneratePublicPrivateKeyPair() keyPair {
|
||||||
|
|
||||||
func (k *keyPair) EncryptAndSign(message []byte) ([]byte, []byte) {
|
func (k *keyPair) EncryptAndSign(message []byte) ([]byte, []byte) {
|
||||||
encryptedMessage, _ := rsa.EncryptPKCS1v15(rand.Reader, &k.PublicKey, message)
|
encryptedMessage, _ := rsa.EncryptPKCS1v15(rand.Reader, &k.PublicKey, message)
|
||||||
signature, _ := rsa.SignPKCS1v15(rand.Reader, &k.PrivateKey, 0, encryptedMessage)
|
signature, _ := rsa.SignPKCS1v15(rand.Reader, &k.PrivateKey, crypto.SHA256, HashBytes(message))
|
||||||
|
|
||||||
return encryptedMessage, signature
|
return encryptedMessage, signature
|
||||||
}
|
}
|
||||||
|
@ -86,3 +87,8 @@ func Hash(input []byte) string {
|
||||||
shaBytes := sha256.Sum256(input)
|
shaBytes := sha256.Sum256(input)
|
||||||
return hex.EncodeToString(shaBytes[:])
|
return hex.EncodeToString(shaBytes[:])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func HashBytes(input []byte) []byte {
|
||||||
|
shaBytes := sha256.Sum256(input)
|
||||||
|
return shaBytes[:]
|
||||||
|
}
|
|
@ -195,7 +195,7 @@ func codeHandler(s *discordgo.Session, i *discordgo.InteractionCreate) {
|
||||||
Embeds: []*discordgo.MessageEmbed{
|
Embeds: []*discordgo.MessageEmbed{
|
||||||
NewEmbedBuilder().
|
NewEmbedBuilder().
|
||||||
SetColor(0x2b2d31).
|
SetColor(0x2b2d31).
|
||||||
SetDescription("`" + encrypted + "`").
|
SetDescription("`" + encrypted + "." + sig + "`").
|
||||||
Build(),
|
Build(),
|
||||||
},
|
},
|
||||||
Flags: discordgo.MessageFlagsEphemeral,
|
Flags: discordgo.MessageFlagsEphemeral,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user