小编Lee*_*ner的帖子

SHA512优于MD5的原因

我想知道我是否可以解释资源的原因或链接,解释为什么SHA512是MD5的优秀哈希算法.

hash md5 cryptography sha512

28
推荐指数
3
解决办法
4万
查看次数

在Java中,如何将InputStream转换为字节数组(byte [])?

我的背景是.net,我对Java很新.我正在为我们公司的java团队做一些工作,架构师需要我实现一个带有InputStream(java.io)对象的方法.为了实现方法的目的,我需要将其转换为字节数组.是否有捷径可寻?

java inputstream type-conversion

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

跨语言(java和c#)对象序列化的策略

我正在开发一个项目,我需要在java 6应用程序中序列化一些数据并将其反序列化为ac#2.0 app.有没有一种策略或已存在的东西,我可以看一下,这可以让我用这两种语言做到这一点?我猜他们都支持XML序列化,但我真的需要它进行二进制序列化.

c# java serialization cross-platform

15
推荐指数
3
解决办法
8842
查看次数

使用充气城堡在Java中加密xml文件的示例

任何人都可以向我展示(或提供一个链接)如何使用充气城堡加密Java文件?我查看过bouncycastle.org但找不到任何API的文档.即使只知道使用哪些课程对我来说也是一个很大的帮助!

java encryption bouncycastle

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

我误解了哈希盐是什么吗?

我正在努力为我们的代码库添加哈希摘要生成功能.我想使用String作为哈希盐,以便可以将预先知道的密钥/密码短语添加到需要进行哈希处理的任何内容中.我误解了这个概念吗?

hash salt

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

如何使用充气城堡在Java中创建SHA512摘要字符串?

此单元测试失败:

    public void testDigest() throws NoSuchAlgorithmException {
    String hashExpected = "150a14ed5bea6cc731cf86c41566ac427a8db48ef1b9fd626664b3bfbb99071fa4c922f33dde38719b8c8354e2b7ab9d77e0e67fc12843920a712e73d558e197";
    MessageDigest md = new MessageDigest();
    String hashActual = new String(md.digest("hi"));
    Assert.assertEquals(hashExpected, hashActual);
}
Run Code Online (Sandbox Code Playgroud)

下面是我的MessageDigest类的实现:


import java.io.IOException;
import java.io.InputStream;
import java.security.NoSuchAlgorithmException;
import java.security.Security;

import org.bouncycastle.crypto.Digest; import org.bouncycastle.crypto.digests.SHA512Digest; import org.bouncycastle.crypto.io.DigestInputStream; import org.bouncycastle.jce.provider.BouncyCastleProvider;

public class MessageDigest { private Digest messageDigest;

public MessageDigest() throws NoSuchAlgorithmException {
    Security.addProvider(new BouncyCastleProvider());
    messageDigest = new SHA512Digest();
}

public byte[] digest(String message) {
    byte[] retValue = new byte[messageDigest.getDigestSize()];
    messageDigest.update(message.getBytes(), 0, message.length());
    messageDigest.doFinal(retValue, 0);
    return retValue;
}
Run Code Online (Sandbox Code Playgroud)

}

测试失败,原因如下: …

Run Code Online (Sandbox Code Playgroud)

java hash bouncycastle sha512

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

从桌面开发人员的角度学习ASP.NET MVC的建议

我的新年决议之一是终于学习一些网络开发.我决定使用ASP.NET MVC,因为我是TDD和IoC的信徒.我正在寻找一个主题列表,也许是为了学习它们,我需要知道它是一个可靠的ASP.NET MVC开发人员.也许这很令人尴尬,但我唯一的网络体验是5年前我在大学时用WYSIWYG编辑制作的html页面.

asp.net-mvc

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

如何查看用户在Visual SourceSafe中检查过的所有文件?

Microsoft Visual SourceSafe中是否有一种方法可以查看我曾登记过的所有文件?

visual-sourcesafe visual-sourcesafe-2005

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

当我使用MemoryStream时,为什么这两个文件会散列到相同的值?

我正在编写ac#例程,从jpg文件创建哈希.如果我将一个字节数组传递给我的SHA512对象然后我得到了预期的行为,但是,如果我传入一个内存流,这两个文件总是散列到相同的值.

例1:

        SHA512 mySHA512 = SHA512.Create();

        Image img1 = Image.FromFile(@"d:\img1.jpg");
        Image img2 = Image.FromFile(@"d:\img2.jpg");
        MemoryStream ms1 = new MemoryStream();
        MemoryStream ms2 = new MemoryStream();

        img1.Save(ms1, ImageFormat.Jpeg);
        byte[] buf1 = ms1.GetBuffer();
        byte[] hash1 = mySHA512.ComputeHash(buf1);

        img2.Save(ms2, ImageFormat.Jpeg);
        byte[] buf2 = ms2.GetBuffer();
        byte[] hash2 = mySHA512.ComputeHash(buf2);

        if (Convert.ToBase64String(hash1) == Convert.ToBase64String(hash2))
            MessageBox.Show("Hashed the same");
        else
            MessageBox.Show("Different hashes");
Run Code Online (Sandbox Code Playgroud)

这会产生"不同的哈希".但ComputeHash方法的一个重载需要一个流对象,我宁愿使用它.当我做:

        SHA512 mySHA512 = SHA512.Create();

        Image img1 = Image.FromFile(@"d:\img1.jpg");
        Image img2 = Image.FromFile(@"d:\img2.jpg");
        MemoryStream ms1 = new MemoryStream();
        MemoryStream ms2 = new MemoryStream();

        img1.Save(ms1, ImageFormat.Jpeg);
        byte[] …
Run Code Online (Sandbox Code Playgroud)

c# hash memorystream sha512

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

什么BDD框架在.net中很流行?

我最近进入BDD并认为它有很大的希望,作为一种方式,让我们作为开发人员为他们创建的应用程序中的利益相关者的声音.你最喜欢的BDD框架是什么?为什么?

.net bdd mspec nspec

7
推荐指数
3
解决办法
1891
查看次数