2011-02-08 65 views
1

我有一个C#应用程序,它调用一些Java应用程序,其中一些使用SSH进行各种事情。目前,我从java命令行应用程序中获取许多弹出框以询问密码。我想知道你是否有任何具体的建议,我可以在C#中输入密码,然后安全地将它传递给Java应用程序。目前我用很多命令行参数使用shell exec调用java应用程序。将密码从C#安全地传输到Java应用程序

我能想到的唯一办法是以某种方式在c#中加密密码,然后在java中解密它。但我怀疑他们没有共享一个共同的解密过程,或者如果他们这样做,我必须通过程序之间的密钥也...

有什么建议吗?

大卫

+0

您是否要求通过参数/通话等方式传递密码等方面的常见方法......或者您是否特别要求如何使用手头的应用程序执行此操作?如果最后一个适用,我们需要知道这些应用程序是什么。 – Bobby 2011-02-08 16:05:10

+0

具体与C#和Java,但我想问题是更一般 – GreyCloud 2011-02-08 16:35:27

回答

5

我认为加密是一个很好的解决方案。

但我可以建议你别的东西。您可以将明文形式的passwod写入来自C#应用程序的Java应用程序的标准输入。 Java应用程序应该从STDIN读取密码并使用它。它足够安全,因为除非使用远程调试API进行反向工程或连接到JVM,否则我不知道拦截此流的方法。如果C#和java应用程序都在同一台机器上运行,则无法嗅探流。

相关问题