草庐IT

Passwords

全部标签

android - 如何在 Android 中存储安全字符串?

在Android中使用KeyStore有什么可以理解的例子吗?我真的不明白如何保护我在ROOTED设备的Android应用程序中的密码/token/任何东西不被对设备有物理访问权限的黑客使用。我知道我可以用一些ALIAS生成KeyPair,例如使用它的私钥作为数据库密码,但我感兴趣的是:任何黑客都可以从我的反编译apk中读取这个ALIAS(因为我不能混淆别名字符串)并构建另一个使用相同ALIAS从androidKeyStore获取privateKey的应用程序?有什么解决办法吗? 最佳答案 Ican'treallyunderstan

java - 如何在 Android 上安全地存储密码?

任务是将输入的密码(PasswordStr)或mKey.getEncodedbyte[]保存起来,之后自动发送给CryptoAPI(Cipher)SecretKeymKey=SecretKeyFactory.getInstance("PBKDF2WithHmacSHA1").generateSecret(newPBEKeySpec(PasswordStr.toCharArray());显然这个密码也可以被加密,但是这将需要另一个密码等等直到无限。Android可能已经提供了一种存储密码的机制?p.s使用远程服务器是不可能的。需要存储在本地。 最佳答案

android - 如何安全地存储 Android KeyStore 密码

在一个应用程序中,我使用了AndroidKeyStore。我已经为整个KeyStore和每个密码条目设置了密码。由于这些密码是字符串,因此它们存储在代码中的字符串成员中。显然,如果我想发布应用程序,这并不安全,因为潜在的攻击者可以反编译apk并获取密码,因为它是硬编码在应用程序中的。我的问题是:在上面的场景中:攻击者是否能够读取我的keystore文件,或者(在无根电话上)该文件是否只能由我的应用程序访问,因此仅凭密码是不够的?处理KeyStore密码的最佳做法是什么?我环顾四周,但没有找到如何处理这个问题的明确答案。为澄清而编辑:我不谈论应用程序签名,而是谈论将加密key存储在受密码

Android - 解压缩密码编码的 zip 文件

是否可以解压使用密码压缩的文件?我进行了搜索,但在文档中找不到任何示例或提及。文档或代码示例的链接会很棒。谢谢,迈克 最佳答案 引用这个问题:HowtounzipapasswordprotectedfileinAndroid它使用zip4j库,在android上运行良好:try{Filesrc=newFile("/sdcard/abc.zip");ZipFilezipFile=newZipFile(src);if(zipFile.isEncrypted()){zipFile.setPassword("a");}Stringdest=

android - 在 EditText 中显示密码的最后一个字符

我有一个应用程序,人们需要使用密码登录。我只想显示最后输入的字符,但我似乎得到的只是所有字符点或所有可见字符。我尝试了一些事情:password.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);password.setTransformationMethod(PasswordTransformationMethod.getInstance());password.setInputType(InputType.TYPE_CLASS_TEXT|InputType.TYPE_TEXT_VARIATION_PASSWORD);并在xml

android - 如何在android中将密码设置为图像像素(提示点击点或图形密码)

我正在创建一个登录应用程序,我将把密码设置为图像的像素。让我更具体一点,我有3个类别的动物、汽车、婴儿,每个类别都包含这些图像。现在用户可以从中选择图片类别并选择图像的任何部分并可以设置密码(例如在动物中我选择狮子的眼睛作为第一个密码)这样我可以选择尽可能多的密码。现在我如何实现这个方法可以给我一些想法或任何源代码,以便我可以实现这个想法 最佳答案 当部分被触摸时,接收用户输入的touchPrecision-粗略或精细或超精细-这是用户设置注册密码时保存以下内容类别1的图像1的触摸1发生在x11,y11类别2的图像2的触摸1发生在x

android - 如何在android中使用TransformationMethod

我想创建一个接受密码的EditText。我想在输入后立即隐藏该字符。因此,我使用了TransformationMethod。我是新手,所以尝试了以下代码。EditTexteditText=(EditText)findViewById(R.id.editText);editText.setTransformationMethod(newPasswordTransformationMethod());privateclassPasswordTransformationMethodextendsTransformationimplementsTransformationMethod{@Ove

java - 在 Android App 中使用 jBCrypt 加盐密码会导致长时间挂起

我正在使用jBCryptLibrary在用户使用我的应用程序注册时对用户密码进行哈希处理。我正在使用基本的散列函数,加盐,如下所示:Stringpass=BCrypt.hashpw(rawPass,BCrypt.gensalt());我在注册时注意到一到两分钟的挂起,并检查了调试器,确认是BCrypt造成的。加盐密码真的需要那么的处理能力吗?如果是这样,一个好的替代方法是将明文密码发送到服务器以对其进行哈希处理吗?我对此事的最初想法是在将其发送到任何地方之前对其进行哈希处理。有什么想法吗? 最佳答案 这里是anarticle其中列出

java - 密码保护我的 android 应用程序(简单的方法)

我已经构建了我的第一个应用程序,我想用密码保护它。将密码存储在Java文件中对我来说很好,方法需要尽可能简单,因为在此应用程序之前我没有java甚至xml的经验。我已经尝试了几次但都失败了,所以我希望有人能帮助我。我已经创建了带有EditText字段的布局:和一个提交按钮:Java文件:packagecom.berry;importandroid.app.Activity;importandroid.content.Intent;importandroid.media.MediaPlayer;importandroid.os.Bundle;importandroid.view.View

android - proguard 防止逆向工程的安全性如何?

我将在应用中处理非常敏感的数据。根据我的定义,混淆并没有增加安全性,它只会在有限的时间内拖延破解者。Proguard是否有可能在这方面做得如此出色,以至于可以称为增加的安全性?最敏感的是一些网络调用。很难嗅探密码,因为我们将在双方生成密码并使用时间戳检查其有效性。问题是应用程序可能会被逆向工程并且生成算法可能会被利用。不可能将算法保存在本地文件中,因为破解者可以使用已获得root权限的手机检索它。从服务器下载算法是行不通的,因为同样的问题也适用于此,如果破解者对应用程序进行逆向工程,他/她将能够看到算法的来源。非常感谢任何关于如何进行的输入!编辑我试图保护的是生成算法,这样破解者就不会