小编Koo*_*eng的帖子

C#SHA256 ComputeHash结果与CryptoJS SHA256函数不同

我有一个C#函数,如下所示:

string stringvalue = "530500480530490480530480480520570480520510500490";
var encodedvalue= Encoding.Unicode.GetBytes(stringvalue);
using (HashAlgorithm ssp = System.Security.Cryptography.HashAlgorithm.Create("SHA256"))
        {

            var digest = ssp.ComputeHash(encodedvalue);

            return BitConverter.ToString(digest); 

        }
Run Code Online (Sandbox Code Playgroud)

我需要创建一个与上面的代码匹配的javascript函数,以便C#和JS的最终结果相同。

目前在我的JS代码中,我正在使用以下代码:

var hash = CryptoJS.SHA256("530500480530490480530480480520570480520510500490");
var hexhash = hash.toString(CryptoJS.enc.hex);
Run Code Online (Sandbox Code Playgroud)

这是我的哈希值的结果:

d956678c8f12c65299daf35019a9a1eb3e6eb9855fd850aeb5aafe46057d179e
Run Code Online (Sandbox Code Playgroud)

但是在我的C#代码中,此行var digest = ssp.ComputeHash(bPass);返回以下数组: 在此处输入图片说明

我对编码了解不多。请告诉我上面的C#代码中填充了哪种类型的结果?如果我没记错的话,ComputeHash正在返回字节,但是我需要大量阅读才能确认那是又一个漫长的学习时间

我尝试了许多不同的方法来转换JS Sha256代码,但是没有运气。我被困在这条特定线上将近一天。

请帮忙。谢谢

编辑:对不起,代码错误。我已经更新了C#代码。ComputeHash接受数组

javascript c# encoding cryptojs

5
推荐指数
3
解决办法
3525
查看次数

如果第一个匹配没有行,如何进行条件连接,请使用第二个匹配

我的客户表中有一些特殊的行以这种方式工作。有多个客户记录属于同一客户,但列值略有不同。这些表属于它们,我无法更改其表中的任何内容,因此我必须处理脚本来处理此问题。

现在,我需要比较主表中的客户数据并从客户表中获取数据。条件如下:

  1. 如果客户端表中存在主表ID,则获取与主表ID列匹配的唯一记录

  2. 如果客户端表中不存在主表ID,请使用主表IDnumber查找并匹配客户端表中的IDnumber。

以下是我要实现的示例:

假设此数据存在于下面的主表和客户表中:

在此处输入图片说明

在上述情况下,我的脚本应始终仅选择客户端表PKId 1,并通过匹配主表ID列和客户端表ClientId列来忽略客户端表中的行PKId 2。

对于下面的另一种情况:

在此处输入图片说明

由于行PKId 1的客户ID为空,并且无法与客户表中的客户ID 10相匹配,因此我的脚本应使用主表Idnumber来查找并匹配客户表中的记录,并通过Idnumber列获取行PKId 2 。

我想在连接条件下做一个案例,但不确定如何构造它。我正在考虑以下内容(不是实际的SQL语句,只是一些想法):

Select 
    c.Id, c.Name, c.AuthorizeToken 
From 
    Client c 
Left Join 
    Main m on (If m.Id = c.ClientId has data return, get AuthorizeToken from that row only;
 else if m.Id = c.ClientId has no data return, use m.Idnumber = c.Idnumber     
 to find and get AuthorizeToken) 
Run Code Online (Sandbox Code Playgroud)

赞赏是否可以为我提供任何其他建议以实现这一目标。

sql t-sql sql-server

5
推荐指数
1
解决办法
6779
查看次数

确定列范围中的任何单元格是否等于0,最终结果是否为0,否则为2

对不起,如果我的标题令人困惑.我是excel中的逻辑公式的新手,但我现在需要它来实现某些目标.我已经检查了互联网的配方,但发现它令人困惑,不知道我应该使用什么方法.

这是我的情况:我有一个excel超过50行.在每一行中,有5个不同的列,其值为1或0,并且有一个额外的列来确定最终值,如下所示:

A1 = 0,B1 = 1,C1 = 0,D1 = 1,E1 = 1,F1 =(最终值)

我需要的是检查从A1到E1的任何单元格是否由0组成,然后F1将等于0的逻辑语句,否则如果所有单元格值为1,则F1等于2.

正如我之前所说,超过50行具有相同的东西,每行包含5列,值为1或0,最后一列根据5列保存最终值0或2.

请告诉我任何可用于实现我的需求的方法,或者是否有更好的解决方案来处理所有基本相同的行.

感谢您的时间.

excel vba excel-vba excel-formula

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

CodePush:在哪里可以找到Visual Studio项目的部署密钥

我正在尝试在我的Visual Studio项目中进行代码推送.我完成了安装cordova插件代码推送并能够查看实例console.log(codePush).

现在我尝试运行codePush.checkForUpdate(),我注意到我需要在config.xml中填写部署密钥.

我阅读了几篇关于部署密钥的文章,但他们都使用Ionic CLI来创建项目,他们可以在CLI中检索部署密钥.但我在Visual Studio中没有看到任何选项,也没有在任何地方看到任何部署密钥信息.

请告知如何获取Visual Studio项目的部署密钥以启用codePush.

cordova ionic-framework visual-studio-2015 code-push

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

循环N表列并将连接的字符串插入同一行

我有一个字符串列表,其中的连接值由分隔符分隔,如下所示:

DECLARE @stringlist NVARCHAR(MAX) = 'company_no,emp_no,emp_name,emp_type,salary_type....'
Run Code Online (Sandbox Code Playgroud)

我有一个带有动态数量的无名列的临时表,其中包含以下数据:

------------------------------
001   A01   John  P     A
001   A05   Mary  P     A
Run Code Online (Sandbox Code Playgroud)

我想拆分字符串并将每个拆分字符串插入一行中的每一列,如下所示:

-----------------------------------------------
company_no emp_no emp_name emp_type salary_type
001        A01    John     P        A
001        A05    Mary     P        A
Run Code Online (Sandbox Code Playgroud)

我可以将字符串拆分成多行.但是,如何拆分和循环临时表中的每一列以插入这些值?

t-sql sql-server-2014

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