首页 > 运维 > 经验 > JAVA数据库加密方法有哪些,用java实现对数据库文件的加密

JAVA数据库加密方法有哪些,用java实现对数据库文件的加密

来源:整理 时间:2024-05-21 08:38:41 编辑:黑码技术 手机版

1,用java实现对数据库文件的加密

自己编写一个加密算法,或者在网上找一个MD5的加密算法,把密码加密后再存入数据库,取的时候解密下就可以了
可以通过其它方法来实现:1:如果没用框架,直接加密、解密即可2:如果用hibernate之类,可以绕过configuration,读取hibernate配置文件解密后再连接数据库3:考虑集群影响

用java实现对数据库文件的加密

2,Java中常用的加密算法有哪些

1、初始化密钥 构建密钥对,生成公钥、私钥保存到keymap中 keypairgenerator ---> keypair --> rsapublickey、rsaprivatekey 2、甲方使用私钥加密, 加密后在用私钥对加密数据进行数据签名,然后发送给乙方 rsacoder.encryptbyprivatekey(data, privatekey); rsacoder.sign(encodeddata, privatekey); 3、乙方则通过公钥验证签名的加密数据,如果验证正确则在通过公钥对加密数据进行解密 rsacoder.verify(encodeddata, publickey, sign); rsacoder.decryptbypublickey(encodeddata, publickey); 4、乙方在通过公钥加密发送给甲方 rsacoder.encryptbypublickey(decodeddata, publickey); 5、甲方通过私钥解密该数据 rsacoder.decryptprivatekey(encodeddata, privatekey);
可以用MD5,也可以用EAS。

Java中常用的加密算法有哪些

3,现在数据库加密的方式有哪几种

数据库加密的方式从最早到现在有4种技术,首先是前置代理加密技术,该技术的思路是在数据库之前增加一道安全代理服务,所有访问数据库的行为都必须经过该安全代理服务,在此服务中实现如数据加解密、存取控制等安全策略,安全代理服务通过数据库的访问接口实现数据存储。安全代理服务存在于客户端应用与数据库存储引擎之间,负责完成数据的加解密工作,加密数据存储在安全代理服务中。然后是应用加密技术,该技术是应用系统通过加密API对敏感数据进行加密,将加密数据存储到数据库的底层文件中;在进行数据检索时,将密文数据取回到客户端,再进行解密,应用系统自行管理密钥体系。其次是文件系统加解密技术,该技术不与数据库自身原理融合,只是对数据存储的载体从操作系统或文件系统层面进行加解密。这种技术通过在操作系统中植入具有一定入侵性的“钩子”进程,在数据存储文件被打开的时候进行解密动作,在数据落地的时候执行加密动作,具备基础加解密能力的同时,能够根据操作系统用户或者访问文件的进程ID进行基本的访问权限控制。最后后置代理技术,该技术是使用“视图”+“触发器”+“扩展索引”+“外部调用”的方式实现数据加密,同时保证应用完全透明。核心思想是充分利用数据库自身提供的应用定制扩展能力,分别使用其触发器扩展能力、索引扩展能力、自定义函数扩展能力以及视图等技术来满足数据存储加密,加密后数据检索,对应用无缝透明等核心需求。安华金和的加密技术在国内是唯一支持TDE的数据库加密产品厂商。

现在数据库加密的方式有哪几种

4,Java大数据加密的方式最好有源码求教

加密解密并非java才有的,所有编程语言都有加密和解密。 目前的加密解密主要可分为以下2大类: 对称秘钥加密:如DES算法,3DES算法,TDEA算法,Blowfish算法,RC5算法,IDEA算法等。其主要特点是加密方和解密方都有同一个密码
import java.security.messagedigest;import java.security.nosuchalgorithmexception;public class md5 private messagedigest md; private static md5 md5; private md5() try md=messagedigest.getinstance("md5"); } catch (nosuchalgorithmexception e) system.out.println("没有这种算法"); } } //产生一个md5实例 public static md5 getinstance() if(null!=md5) return md5; else makeinstance(); return md5; } } //保证同一时间只有一个线程在使用md5加密 private static synchronized void makeinstance() if(null==md5) md5=new md5(); } public string createmd5(string pass) md.update(pass.getbytes()); byte[] b=md.digest(); return bytetohexstring(b); } private string bytetohexstring(byte[] b) stringbuffer sb=new stringbuffer(); string temp=""; for(int i=0;i<b.length;i++) temp=integer.tohexstring(b[i]&0xff); if(temp.length()==1) temp="0"+temp; sb.append(temp); } return sb.tostring(); } public static void main(string[] args) system.out.println(md5.getinstance().createmd5("123")); } }

5,请问数据库要如何保密

你可以将数据库所在的文件夹设置管理权限,这样除了你的密钥,任何人都打不开这个文件夹。不好的是,一旦密钥丢失,你自己也会打不开它的。
用专门的一台电脑当做数据库服务器,这样就不用担心数据被拷贝了。当然还得做好防盗措施。
在需要加密字段的表中,增加对应的加密后的密文字段。例如表users中有字段salary需要加密,则增加新字段encrypted存放加密后的内容,而原salary的内容设为0值或者删除。具体来说:编写pl/sql代码,主要是产生密钥和提供加密解密的function,其中加密解密的function调用oracle8i提供的数据加密包:dbms_obfuscation_toolkit。从而使数据得到加解密。步骤:1、新建了一个swing的单屏幕,在sf_post_query_of_each_row()方法中调用oracle已经建立好的function,对解密字段进行解密之后,再显示屏幕相应的字段上。2、当进行insert或者update存盘,在sf_post_database_commit()方法中,调用加密function进行加密,然后存入数据库。常见问题:1、查询的时候,由于在sf_post_query_of_each_row()方法中解密后,又往屏幕中字段进行了set动作,导致屏幕的状态改变,最终导致屏幕存盘后会出现数据错误。2、这样做的效率比较低,因为每次都要在java程序里调用解密,存盘时调用加密。
1、思路:在需要加密字段的表中,增加对应的加密后的密文字段。例如表users中有字段salary需要加密,则增加新字段encrypted存放加密后的内容,而原salary的内容设为0值或者删除。2、具体来说:编写PL/SQL代码,主要是产生密钥和提供加密解密的function,其中加密解密的function调用Oracle8i提供的数据加密包:dbms_obfuscation_toolkit。从而使数据得到加解密。3、测试案例: (1)、新建了一个SWING的单屏幕,在SF_POST_QUERY_OF_EACH_ROW()方法中调用Oracle已经建立好的function,对解密字段进行解密之后,再显示屏幕相应的字段上。 (2)、当进行insert或者update存盘,在SF_POST_DATABASE_COMMIT()方法中,调用加密function进行加密,然后存入数据库。4、遇到的问题: (1)查询的时候,由于在SF_POST_QUERY_OF_EACH_ROW()方法中解密后,又往屏幕中字段进行了set动作,导致屏幕的状态改变,最终导致屏幕存盘后会出现数据错误。 (2)这样做的效率比较低,因为每次都要在Java程序里调用解密,存盘时调用加密。Oracle规定,不能对trigger的触发表进行操作。还有,如果用自治事务去实现,同样在update动作的时候会造成dead lock发生。
你用的什么数据库? 要是放在服务器上,你只能保证服务器安全,其他没方法。
怕被拷走,就做物理隔离! 再花钱买台电脑,分隔开!
文章TAG:java数据数据库加密JAVA数据库加密方法有哪些

最近更新

  • 数据库专业开设哪些课程,学好数据库要学哪些课程数据库专业开设哪些课程,学好数据库要学哪些课程

    学好数据库要学哪些课程数据库系统概念2,数据库课程有哪些数据库原理,数据库开发及应用。3,考数据库工程师都要学哪些课程数据库系统工程师考试涉及的方面很广,如果是大二的学生,可能有些科.....

    经验 日期:2024-05-21

  • 熟悉主流的数据库有哪些,工作中最常用的数据库有哪些熟悉主流的数据库有哪些,工作中最常用的数据库有哪些

    工作中最常用的数据库有哪些asp个人网站以access为主企业的大型网站应该都是mssqlphp用mysqlmysql和oracle是最常见的,做.net开发的话sqlserver也用的较多2,现在常用的数据库有哪些SQLS.....

    经验 日期:2024-05-21

  • 火狐鼠标手势插件下载,火狐插件shockwaveflash下载火狐鼠标手势插件下载,火狐插件shockwaveflash下载

    火狐官网自带插件专用下载用过火狐一段时间以来,很多人都不太习惯使用这个浏览器,因为刚从下载回来的大军一。其实火狐的特点是扩展,优势是开源,每个人都可以编辑火狐插件,为火狐的发展提供.....

    经验 日期:2024-05-21

  • 哪些试题录数据库,请根据以下题录信息判断该文献全文可能出自以下哪些数据库哪些试题录数据库,请根据以下题录信息判断该文献全文可能出自以下哪些数据库

    请根据以下题录信息判断该文献全文可能出自以下哪些数据库2,题库软件哪种最好用好用的题库软件怎么选3,最好用的试题库软件是什么1,请根据以下题录信息判断该文献全文可能出自以下哪些数.....

    经验 日期:2024-05-20

  • 数据库的动作有哪些,注入点是什么意思数据库的动作有哪些,注入点是什么意思

    注入点是什么意思2,什么是检索数据库操作3,数据库系统的四个主要动作是什么4,mssql数据库的这些是什么5,jsp有哪些动作作用分别是什么1,注入点是什么意思注入,简单来说就是利用SQL语句在外部.....

    经验 日期:2024-05-20

  • ai人工智能应用技术,ai到底是什么ai人工智能应用技术,ai到底是什么

    ai到底是什么2,什么是人工智能主要做什么的3,什么是AI4,人工智能的发展前景如何5,浅谈人工智能技术在生活科技中的运用技术1,ai到底是什么人工智能(ArtificialIntelligence),英文缩写为AI。.....

    经验 日期:2024-05-20

  • xp的插件下载xp的插件下载

    ghostxpSystem下载Stationghostxp系统哪里可以找到不在乎恶意的人插件可以去深~绿茶~信仰之类的管网~。如何下载更新flash插件?将解压后的文件复制粘贴到以下路径:(大家可能安装WOW的位.....

    经验 日期:2024-05-20

  • 数据库类型有哪些db,数据库分为哪几类数据库类型有哪些db,数据库分为哪几类

    数据库分为哪几类2,数据库有哪些种类3,数据库有哪些类型1,数据库分为哪几类按国际上通用的分类方法,数据库分为以下三大类:1、参考数据库(Referencedatabases),是能指引用户到另一信息源获取.....

    经验 日期:2024-05-20