Tag: .net

将字节数组转换为X.509证书

我正在尝试将一段Java代码移植到.NET中,该代码采用Base64编码的字符串,将其转换为字节数组,然后使用它生成X.509证书以获取RSA加密的模数和指数。 这是我试图转换的Java代码: byte[] externalPublicKey = Base64.decode(“base 64 encoded string”); KeyFactory keyFactory = KeyFactory.getInstance(“RSA”); EncodedKeySpec publicKeySpec = new X509EncodedKeySpec(externalPublicKey); Key publicKey = keyFactory.generatePublic(publicKeySpec); RSAPublicKey pbrtk = (java.security.interfaces.RSAPublicKey) publicKey; BigInteger modulus = pbrtk.getModulus(); BigInteger pubExp = pbrtk.getPublicExponent(); 我一直在试图找出将其转换为.NET的最佳方法。 到目前为止,我已经想出了这个: byte[] bytes = Convert.FromBase64String(“base 64 encoded string”); X509Certificate2 x509 = new X509Certificate2(bytes); RSA rsa = (RSA)x509.PrivateKey; RSAParameters rsaParams […]

从.NET调用Java API – 最好的方法

我需要从现有的.NET代码库中调用java中的所有API。 这里最好的方法是什么? 在java中编写一个web服务,基本上只是将调用转发给API – 或者像JNI4NET这样的东西 ?

将数据转换为声音并返回

是否有可以将数据(文本文件等)转换为声音并返回原始数据的库? 声音可以传输到我希望的任何媒体,无论是收音机等。我只需要将数据存储在声音文件中。 场景: 步骤1:将带有嵌入图像的.docx文件转换为.wav。 step2:通过无线电波发送。 步骤3:将此.wav转换回带有嵌入图像的.docx文件。 这个概念可以应用于任何数据。 技术: .net或java

C#强制执行语句的顺序

我的问题是关于C#中执行保证的顺序(通常可能是.Net)。 我给出了一些我知道要比较的Java示例。 对于Java(来自“Java Concurrency in Practice”) 无法保证一个线程中的操作将按程序给出的顺序执行,只要在该线程内无法检测到重新排序 – 即使重新排序对其他线程是明显的。 所以代码 y = 10; x = 5; a = b + 10; 可能实际上指定a = b + 10在指定y = 10之前 在Java中(来自同一本书) 当线程A启动由同一个锁保护的同步块时,线程A在同步块之前或之前执行的所有内容都对线程B可见。 所以在Java中 y = 10; synchronized(lockObject) { x = 5; } a = b + 10; 保证y = 10和x = 5都在a = b + 10之前运行(我不知道y = […]

RSA。 Java加密.NET解密

我需要实现登录.NET Soap Web Service。 此Web服务有方法 AuthenticateUser(username, password) 和密码应使用RSA公钥加密。 在我想要做的下面: public static final String PUBLIC = “q/9CujExqL6rsMMO22WWIotoXDCw5KEmGQJqL9UJEfoErwZ9ZCm3OwMTSlAMSfoXEMA04Y1rhfYC3MtU/7dYEoREfsvOPGDBWanTKyMzv2otCfiURyQoghEdkhv3ipQQaaErT7lfBKobJsdqJlvxo4PCOUas2Z6YpoMYgthzTiM=”; public static final String EXPONENT = “AQAB”; public static PublicKey getPublicKey() throws Exception{ byte[] modulusBytes = Base64.decode(PUBLIC, 0); byte[] exponentBytes = Base64.decode(EXPONENT, 0); BigInteger modulus = new BigInteger(1, (modulusBytes) ); BigInteger exponent = new BigInteger(1, (exponentBytes)); RSAPublicKeySpec spec = […]

哪个是.net / java中集体智能的优秀开源库?

还是广泛利用集体智慧的任何开源项目?

在Java服务器中validationWindows用户

我正在研究用Java编写的服务器和一个在同一网络上的Windows机器上运行的客户端(用.Net编写的桌面应用程序)。 我希望有一些基本的身份validation,以便服务器可以确定运行客户端的用户的用户名,而无需用户在客户端重新输入他们的Windows密码。 这是可能的,实现它的最简单方法是什么? 我看了一些可用的API,看起来好像Java中的org.ietf.jgss包和.Net中的NegotiateStream类,应该可以相互通信来实现这一点 – 但我一直在打击令人沮丧的错误消息我不明白。 我想我会检查这是否是正确的方法,如果是这样的话,我会发布一个单独的问题,更详细地说明有问题的错误:)

RESTful和SOAP Web服务在实践中有何不同?

我正在为PHP应用程序实现Web服务,并试图了解标准Web服务和RESTful Web服务所提供的内容。 我的目的是编写包装器代码以抽象出Web服务细节,以便开发人员可以“实例化远程对象”并使用它们。 以下是我的想法,也许你们中的一些人可以添加你的经验并扩展它: RESTful Web服务 基本上只是“按需提供XML源”,因此您可以为客户端应用程序编写包装器代码,以便它可以通过以下方式查询服务器应用程序: $users = Users::getUsers(“state = ‘CO'”); 这将反过来从远程URL获取XML提要 $ users可以被制作成完整User用户对象的集合,或者 保留为XML,或 变成arrays等 查询脚本(“state =’CO’”)将在服务器端转换为SQL RESTful Web服务通常只能从客户端的视图中读取,尽管您可以编写可以使用POST或GET在服务器上进行更改的代码,例如传递加密令牌以确保安全性,例如: $ users = Users :: addUser($ encryptedTrustToken,’jim’,$ encryptedPassword,’James’,’Taylor’); 这将在服务器应用程序上创建一个新用户。 标准Web服务 标准Web服务最终基本上做同样的事情。 他们的一个优势是客户可以通过WSDL发现他们的细节。 但除此之外,如果我想编写允许开发人员远程实例化,编辑和保存对象的包装代码,我仍然需要实现包装器代码。 SOAP不会为我做任何事情,它可以做到这一点: $soap = new nusoap_client(‘http://localhost/test/webservice_user.php?wsdl’, true); $user = $soap->getProxy(); $lastName = $user->lastName(); 但如果我想编辑并保存: $user->setLastName(‘Jones’); $user->save(); 然后我需要例如处理服务器端的所有状态,SOAP似乎并没有为每个客户端在服务器端保存该对象。 也许我正在使用的PHP SOAP实现存在限制(nusoap)。 也许Java和.NET实现可以做得更多。 很乐意听取您的反馈意见,以清理其中的一些云。

与其他编程语言相比,为什么Java是安全的?

Java供应商和社区称“Java比其他语言更安全” 。 但我想知道怎么做? 如果我们看看Java和.Net中的编程,它们看起来很相似。 .net编程中涉及的步骤 单击以了解更多信息 写.net程序。 将代码编译为MSIL (编译将源代码转换为Microsoft中间语言(MSIL)并生成所需的元数据)。 将MSIL编译为本机代码 (在执行时,实时(JIT)编译器将MSIL转换为本机代码。在此编译期间,代码必须通过validation过程,该过程检查MSIL和元数据以查明代码是否可以被确定为类型安全)。 运行代码 (公共语言运行库提供了允许执行的基础结构和可在执行期间使用的服务)。 java编程中涉及的步骤 单击以了解更多信息 编写Java程序 编译Java程序 (Java编译器将java源代码转换为.class文件,这是一个字节代码) 程序通过JVM加载到内存中 (JVM将.class文件加载到内存中进行字节码validation并以机器语言转换.clsss文件) Java程序的执行 (无论我们在Java程序中编写什么动作,JVM通过解释字节码来执行它们。如果我们谈论旧的JVM,它们很慢,一次执行和解释一个字节码。现代JVM使用JIT编译单元我们甚至调用即时编译)。 如果我们看两种语言中的步骤几乎相同,那么“为什么Java与其他语言相比更安全?”

为什么公共语言运行时不能支持Java

今天,公共语言运行时支持多种语言,包括Iron Python和Iron Ruby。 我们同样可以在Java Run Time环境中使用J Ruby和J Python。 如果是这样,为什么.net框架工作的公共语言运行时间不能支持Java? 你只是好奇地知道,虽然你可能会认为这是一个愚蠢的问题。