小编Dyl*_*les的帖子

Java中的RSA加密:跨平台问题?

情况

我正在使用Java中的RSA加密.我正在尝试加密配备Cyanogenmod的Android 2.2的HTC Saphire(32B)开发人员手机上的数据,然后在运行Mandriva Linux 2010的64位服务器上解密所述数据.我在两台机器上使用相同的公钥,私钥对,可以正确加密/解密Android手机上的数据,可以正确加密/解密Linux服务器上的数据,但我无法加密手机上的数据,然后在服务器上解密.我得到了糟糕的填充异常.我已经确认电话正在正确发送数据,并且服务器正在正确解析数据.因此,我无法弄清楚为什么解密失败.谁能帮我这个?也许Java中的RSA算法有一些关于字大小的潜在假设?

更多的信息:

  • 我的加密/解密库基于此处的指南.
  • 我的加密密钥长度为2048位,但我看到了不同密钥大小的类似行为.
  • 我已将RSA加密/解密代码打包到jar文件中.它是在服务器的机器上通过Eclipse编译的.
  • 使用Android手机上的加密库的程序使用上述库.它也是使用Eclipse构建的.
  • 服务器程序是使用Netbeans构建的(因为当时这样做更容易).

其他问题

  • 是否有其他可用于Java的免费公钥加密算法/库?他们跨平台工作吗?人们对他们的期望是什么?等等我调查了这个并没有找到太多; 也许我正在寻找错误的关键词.

唷!我想就是这样.感谢您的帮助!

java android cross-platform encryption-asymmetric public-key-encryption

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

在Java中将多个集合组合成一个流的最简单方法是什么?

假设我有多个集合,我想将其作为单个流处理.最简单的方法是什么?是否有可以为我做这个的实用工具类,或者我必须自己滚动一些东西?

如果我的问题不明确,这基本上就是我想要做的:

Collection<Region> usaRegions;
Collection<Region> canadaRegions;
Collection<Region> mexicoRegions;
Stream<Region> northAmericanRegions = collect(usaRegions, canadaRegions, mexicoRegions);

public Stream<T> collect(T...) {
     /* What goes here? */
}
Run Code Online (Sandbox Code Playgroud)

java collections java-8 java-stream

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

使Android 2.1上的蓝牙无限期可被发现

我正在研究涉及蓝牙和Android操作系统的研究项目.我需要无限期地发现蓝牙,以便项目继续进行.

问题:

  • Android将发现限制为300秒.
  • 由于我的应用程序设计为在后台运行而不会打扰用户,因此我无法每隔300秒让用户重新发现可发现性.
  • 据我所知,没有办法通过Android的GUI增加时间.一些消息来源称这是一个安全功能,其他人称这是一个错误.两者都可能有一些道理......

我正在尝试/尝试过:

  • 我正在尝试编辑cyanogenmod的稳定版本以关闭可发现性计时器(这是可能的;有一个配置文件需要更改一个数字).这不起作用,因为我对生成的包有验证问题.
  • 在过去的一周里,我下载了cyanogenmod源代码,改变了一个相关的类,希望它可以无限期地发现蓝牙,并试图重新编译.这不起作用,因为(a)repo经常被更改,导致不稳定的代码库无法编译(或者,可能是我错误地使用它;只是因为它看起来像是许多代码的错误实例并不意味着我应该把它归咎于我遇到的所有问题!)和(b)repo决定定期"忽略"我(但并不总是,因为我之前已经获得了代码库!),回复我的同步/连接尝试:

    致命:远程端意外挂断

正如您可能想象的那样,上述两个问题是有问题的,并且处理起来非常令人沮丧.
更多信息:

  • 我通过cyanogenmod运行Android 2.1(我相信v5).这意味着手机也已植根.
  • 我有一个开发人员手机,这意味着引导加载程序已解锁.
  • 我的手机是HTC Magic(32B).

大问题:

  • 如何在Android上无限制地发现蓝牙?

android bluetooth

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

Unix/Linux管道是生产者还是消费者驱动?

假设我有这个:

A | B | C

管道如何工作?A只在B请求时产生数据吗?如果B目前无法接受数据,A会不断产生数据然后阻止吗?什么是C的角色?我意识到我正在设计的系统在概念上与这些管道非常相似 - 我想借鉴现有的范例,而不是发明一些只能工作一半的小说.

unix linux bash shell pipe

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

在Android 1.6上运行jUnit Test时验证错误

这是我试图在Android 1.6上运行的内容:

package com.healthlogger.test;

public class AllTests extends TestSuite
{
    public static Test suite()
    {
        return new TestSuiteBuilder(AllTests.class).includeAllPackagesUnderHere().build();
    }
}
Run Code Online (Sandbox Code Playgroud)

和:

package com.healthlogger.test;

public class RecordTest extends AndroidTestCase
{

    /**
     * Ensures that the constructor will not take a null data tag.
     */
    @Test(expected=AssertionFailedError.class)
    public void testNullDataTagInConstructor()
    {
        Record r = new Record(null, Calendar.getInstance(), "Data");
        fail("Failed to catch null data tag.");
    }
}
Run Code Online (Sandbox Code Playgroud)

主要项目是HealthLogger.这些是从单独的测试项目(HealthLoggerTest)运行的.HealthLogger和jUnit4位于HealthLoggerTest的构建路径中.jUnit4也在HealthLogger的构建路径中."Record"类位于com.healthlogger中.

注释掉"@Test ..."和"Record r ..."行可以运行此测试.取消注释后,我会收到VerifyError异常.我严重受阻了; 为什么会这样?


编辑:崩溃后来自logcat的一些信息:

    E/AndroidRuntime( 3723): Uncaught handler: thread main exiting due to uncaught …
Run Code Online (Sandbox Code Playgroud)

junit android unit-testing verifyerror android-sdk-1.6

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

AnyLogic仿真如何调用R脚本

我需要从 AnyLogic 调用 R 脚本。我有一个代理“传感器”,它将从特定位置发送随机文件到 R 脚本,然后 R 脚本将分析该文件并让我们知道该文件的类型(图像、声音、文本等)

请让我知道如何从 AnyLogic 调用 R 脚本。

r anylogic

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

WakeLock并不总是发布

我最近重建了应用程序的电源管理部分以降低复杂性.其中的变化是重复使用唤醒锁; 具体而言,线程在创建时接收唤醒锁,然后根据需要获取/释放它直到被杀死.我发现这会导致唤醒锁release()被调用时并不总是释放.导致问题的代码在本质上是在这里给出的:

// Get the lock for the first time, acquire it, and do some work.
WakeLock wakelock = receiveFirstWakeLock();
wakelock.acquire();
doWork();

// When work is finished, release the lock. 
// Typically this lock is released very quickly.
wakelock.release();

// Re-acquiring the lock for the next bout of work always works.
wakelock.acquire();
doWork();

// In my full code, "wakelock" didn't appear to be releasing properly.
// I hypothesized that it might just be taking a little while 
// …
Run Code Online (Sandbox Code Playgroud)

java android android-wake-lock wakelock

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