标签: sha256

调用 RSACryptoServiceProvider.SignData 时 ArgumentException“值无效”

使用以下代码调用 RSACryptoServiceProvider.SignData 时,出现 System.ArgumentException“值无效”:

var csp = (RSACryptoServiceProvider)_certificate.PrivateKey;
string simpleName = CryptoConfig.MapNameToOID("SHA256");
return csp.SignData(data, simpleName);
Run Code Online (Sandbox Code Playgroud)

该代码来自第三方示例,因此它应该在正确的情况下工作。看来这可能是由我的操作系统引起的,但我还没有找到解决方案,所以我想在这里发帖看看是否有人可以提供帮助?

.NET Framework:3.5 操作系统:Microsoft Windows Server 2003 R2 企业版 Service Pack 2

security rsa sha256

2
推荐指数
1
解决办法
2771
查看次数

SHA-256 测试向量

我正在尝试复制此处找到的值http://www.nsrl.nist.gov/testdata/

SHA-256 应该将“abc”哈希为

 BA7816BF 8F01CFEA 414140DE 5DAE2223 B00361A3 96177A9C B410FF61 F20015AD
Run Code Online (Sandbox Code Playgroud)

但在linux下使用sha256 sum我得到了这个。

edeaaff3f1774ad2888673770c6d64097e391bc362d7d6fb34982ddf0efd18cb

adam@adam-desktop:~/code/android-casual/trunk/CASUALcore$ echo "abc">./test.tmp
adam@adam-desktop:~/code/android-casual/trunk/CASUALcore$ sha256sum test.tmp
edeaaff3f1774ad2888673770c6d64097e391bc362d7d6fb34982ddf0efd18cb  test.tmp
adam@adam-desktop:~/code/android-casual/trunk/CASUALcore$ echo "abc"|sha256sum
edeaaff3f1774ad2888673770c6d64097e391bc362d7d6fb34982ddf0efd18cb  -
Run Code Online (Sandbox Code Playgroud)

linux testing sha256

2
推荐指数
1
解决办法
2190
查看次数

如何在java中使用哈希sha256生成哈希码?

我想知道在java中执行此操作的代码吗?

这是我到目前为止所拥有的,但它不起作用?

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import static jdk.nashorn.tools.ShellFunctions.input;

public class Sha256hash 
{

    public static String main(String[] args) throws NoSuchAlgorithmException 
    {
        MessageDigest md = MessageDigest.getInstance("SHA1");
            md.reset();
            byte[] buffer = input.getBytes("UTF-8");
            md.update(buffer);
            byte[] digest = md.digest();

            String hexStr = "";
            for (int i = 0; i < digest.length; i++) {
                hexStr +=  Integer.toString( ( digest[i] & 0xff ) + 0x100, 16).substring( 1 );
            }
            return hexStr;
    }

}
Run Code Online (Sandbox Code Playgroud)

java hash sha256

2
推荐指数
1
解决办法
9549
查看次数

ColdFusion hmac() 使用 toBase64 和 binaryEncode 返回不同的值

我正在尝试使用 ColdFusion 的hmac()函数来计算 HMAC 值,binaryEncode(binaryObj,'Base64')而不是使用toBase64(),因为该函数已被弃用。它toBase64()binaryEncode(). 这些文档的信息量不是很大。有人可以帮助我理解为什么我不能使用 获得相同的价值binaryEncode吗?

据我了解,该hmac()函数以十六进制格式返回结果。binaryEncode()期望一个二进制值,因此hmac()必须先将结果从十六进制转换为二进制,然后才能将其转换为 base64。

<cfset string = "1234567890" />
<cfset secretKey = "abcdefghijklmnopqrstuvwxyz" />
<!--- Get Hex results from HMAC() --->
<cfset hmacHex = hmac(string,secretKey,'HMACSHA256') />
<!--- Decode the binary value from hex --->
<cfset hmacAsBinary = binaryDecode(hmacHex,'hex') />
<!--- Convert binary object to Base64 --->
<cfset hmacBase64 = binaryEncode(hmacAsBinary, 'base64') />
<cfoutput>
    <!--- incorrect hmac signature …
Run Code Online (Sandbox Code Playgroud)

binary coldfusion hex sha256 hmac

2
推荐指数
1
解决办法
700
查看次数

如何在 dart 中解密加密值?

我正在测试 Dart 的加密哈希函数。我找不到有关解密的任何信息?谁能告诉我如何解密加密值?

这是例子;

import 'dart:convert';
import 'package:crypto/crypto.dart'; 

void main() async { 
  var key = utf8.encode('p@ssw0rd'); 
  var bytes = utf8.encode("Dart and Aqueduct makes my life easier. Thank you."); 


  // TODO: ENCRYPTION 
  var hmacSha256 = new Hmac(sha256, key); // HMAC-SHA256 
  var digest = hmacSha256.convert(bytes); 
 
  print(“————ENCRYPTION—————“); 
  print("HMAC digest as bytes: ${digest.bytes}"); 
  print("HMAC digest as hex string: $digest"); 
  print('\r\n'); 


  // TODO: DECRYPTION 
     ???????????? 
  print(“————DECRYPTION—————“); 
  print(?????????); 

}
Run Code Online (Sandbox Code Playgroud)

encryption sha256 hmac dart

2
推荐指数
2
解决办法
9732
查看次数

来自 UserHashedTableAuth 的 Ktor 基本身份验证

在 Ktor 网站https://ktor.io/samples/feature/auth.html 的这个示例中,他们使用帐户“test”和密码“test”作为示例。

@UseExperimental(KtorExperimentalAPI::class)
val hashedUserTable = UserHashedTableAuth(
    getDigestFunction("SHA-256") { "ktor${it.length}" },
    table = mapOf(
        "test" to Base64.getDecoder().decode("GSjkHCHGAxTTbnkEDBbVYd+PUFRlcWiumc4+MWE9Rvw=") // sha256 for "test"
    )
)
Run Code Online (Sandbox Code Playgroud)

我需要创建另一个条目,但我无法弄清楚他们是如何获得该哈希值的。我试图对“测试”这个词进行 sha256,无论是否加盐,都试图对结果进行 base64...没有任何匹配的哈希值,所以我无法创建另一个用户。

任何人都可以在这里启发我如何使用该代码创建兼容的哈希?

authentication base64 sha256 kotlin ktor

2
推荐指数
1
解决办法
365
查看次数

如何让 Google Apps 脚本进行 SHA-256 加密?

我需要使用 TEXT 输入、1 轮、HEX 输出、SHA-256 加密来加密字符串。这应该是长度为 64 的字符串。
我在 Google Apps Script 文档中尝试过的每个 SHA-256 加密模块都返回一组数字。例如。

function SHA256() {
    var signature = Utilities.computeHmacSha256Signature("this is my input",
                                                 "my key - use a stronger one",
                                                 Utilities.Charset.US_ASCII);
Logger.log(signature);
    }
Run Code Online (Sandbox Code Playgroud)

输出

[53, -75, -52, -25, -47, 86, -21, 14, -2, -57, 5, -13, 24, 105, -2, -84, 127, 115, -40, -75, -93, -27, -21, 34, -55, -117, -36, -103, -47, 116, -55, -61]
Run Code Online (Sandbox Code Playgroud)

我在文档或其他地方没有看到任何指定我要为 GAS 概述的每个参数的内容。如果需要的话,我不介意从头开始进行更深入的解释。我正在加密信息以发送到 Facebook 以进行广告的离线转换。Facebook 如何解密加密的字符串?
Google Apps 脚本文档
https://developers.google.com/apps-script/reference/utilities/utilities#computeHmacSha256Signature(String,String,Charset)

javascript sha sha256 google-apps-script

2
推荐指数
1
解决办法
2208
查看次数

根据我之前是否打印出切片,计算 sha256 会在附加切片后给出不同的结果

我正在从多个字符串计算 sha256。我以特定方式将它们转换为字节切片并将它们全部附加在一起,然后使用内置库计算散列。但是,根据我是否在计算 sha256 之前打印出切片,我会得到不同的结果。在操场上测试时,我无法重现它。

可以在https://play.golang.org/p/z8XKx-p9huG上查看并运行经过测试的代码,在这两种情况下,它实际上给出了相同的结果。

func getHash(input1 string, input2hex string, input3hex string, input4 string) (string, error) {
    input1bytes := []byte(input1)
    firstHalfinput1Bytes := input1bytes[:8]
    secondHalfinput1Bytes := input1bytes[8:16]

    input4Bytes := []byte(input4)

    input3Bytes, err := hex.DecodeString(input3hex)
    if err != nil {
        fmt.Println("err " + err.Error())
    }

    input2Bytes, err := hex.DecodeString(input2hex)
    if err != nil {
        fmt.Println("err " + err.Error())
    }

    fullHashInputBytes := append(firstHalfinput1Bytes, input2Bytes...)
    // THIS IS THE OPTIONAL PRINT WHICH CHANGES OUTPUT LOCALLY:
    fmt.Println("fullHashInputBytes", fullHashInputBytes)
    fullHashInputBytes = append(fullHashInputBytes, secondHalfinput1Bytes...)
    fullHashInputBytes …
Run Code Online (Sandbox Code Playgroud)

sha256 go slice

2
推荐指数
1
解决办法
151
查看次数

生成与 IPFS-Desktop CID 匹配的 CID 的无节点方法

我想在 javascript 中为文件生成 CID(内容标识符),而无需访问 IPFS 节点或互联网。我尝试使用js-multihashing-async首先对文件进行散列,然后使用js-cid从散列生成 CID,但是我得到的 CID 与将文件添加到ipfs-desktop 不同。看起来问题出在 IPFS 节点数据块上,而 CID 用于链接文件块的 DAG。我已经尝试过这个库,但它不会产生与 ipfs-desktop 为同一个文件所做的相同的 CID。这个问题与我的问题基本相同,但没有一个答案给出与 ipfs-desktop-generated CID 匹配的 CID。

javascript sha256 ipfs

2
推荐指数
1
解决办法
1148
查看次数

如何获取 github 存储库的 sha256 哈希码?

我正在尝试为需要“sha256”哈希码的 git hub 存储库构建一个公寓包,我如何为 git 存储库示例获得 sha256。https://github.com/jensengroup/fragbuilder

例子在这里:

source:
  url: https://files.pythonhosted.org/packages/38/7c/be04cb1010161c5f32a0a3d7f79af492e98d0487814d8d1bd35ca257a41a/{{ name }}-{{ version }}.zip
  sha256: "bbd9fd380826c6cef78871f62b3fb8cf4a466fa99a32e61ea9ba839dc1833e5d"
Run Code Online (Sandbox Code Playgroud)

这个由 conda 框架生成的 sha256 是我如何为 git repo 获取他的。

python sha256 anaconda conda

2
推荐指数
1
解决办法
4821
查看次数