Oracle GoldenGate密码加密

说明:本文为Oracle GoldenGate密码加密指导手册
标签:OGG密码加密、OGG密码明文转密文、OGG安全、OGG密码安全
温馨提示:如果您发现本文哪里写的有问题或者有更好的写法请留言或私信我进行修改优化

正文开始


大纲

--默认公钥加密
--自定义公钥加密

 

★ 默认公钥加密(安全度不高,因为加密公钥相同)

/////////////////////////////////////
✔ 目的
将明文密码“ogg”根据不同的加密算法转为密文,从而确保数据库安全

✔ 加密
温馨提示:默认加密算法“BLOWFISH”可以写可不写“encrypt password ogg [BLOWFISH] encryptkey default”
GGSCI > encrypt password ogg encryptkey default    
    Using Blowfish encryption with DEFAULT key.
    Encrypted password:  AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB    【加密后的密文串】
    Algorithm used:  BLOWFISH    【默认加密算法】

✔ 测试
GGSCI > dblogin userid ogg ,password AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB ,encryptkey default
    Successfully logged into database.    【成功登陆】

✔ 替换参数中的明文密码
温馨提示:注释或删除旧的明文密码格式,并用新的密文格式替换
GGSCI > edit param XXX
    ……
    userid ogg,password ogg        【删除旧的明文密码格式】
    userid ogg ,password AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB ,encryptkey default    【替换新的密文密码格式】
    ……

✔ 替换后建议重启相关OGG进程进行密码生效

 


★ 自定义公钥加密(安全度高,因为加密公钥不同)

/////////////////////////////////////
✔ 目的
将明文密码“ogg”根据不同的加密算法转为密文,从而确保数据库安全

✔ 生成自定义公钥
※ 切换到OGG的管理用户下,本文为oracle
    su - oracle        
※ 进入到OGG的安装目录下
    cd $OGG_HOME
※ 随机生成1个N字节的公钥串

./keygen 128 1    【本文输出为:0x69135221D7628B6983FE6F552AC7DB6D】
./keygen 192 1    【本文输出为:0x22790C3EA2C80C2D79880C26BF4DF44D556452697DA85759】
./keygen 256 1    【本文输出为:0x86941C196EB7C6699DC66B0C1C2F1E6BFE4AAE76A03C391ABA4AC07F94178A1C】

✔ 编辑公钥存储文件
vi ENCKEYS        【创建/编辑名为“ENCKEYS”的OGG秘钥文件,并将公钥别名和公钥串添加进去】
    ##Key_name    Key_value
    zzt_128     0x69135221D7628B6983FE6F552AC7DB6D
    zzt_192     0x22790C3EA2C80C2D79880C26BF4DF44D556452697DA85759
    zzt_256     0x86941C196EB7C6699DC66B0C1C2F1E6BFE4AAE76A03C391ABA4AC07F94178A1C

✔ 使用不同公钥加密明文密码ogg
※ 正确的案例

GGSCI > encrypt password ogg BLOWFISH encryptkey default    【默认公钥和默认加密算法】
    Using Blowfish encryption with DEFAULT key.
    Encrypted password:  AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB    【加密后的密文串】
    Algorithm used:  BLOWFISH    【默认加密算法】
GGSCI > encrypt password ogg AES128 encryptkey zzt_128    【自定义公钥和加密算法】
    Encrypted password:  AADAAAAAAAAAAADAYFRAIGKAYBAHQIRIJGQFPHMEMAXEQHTFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA    【加密后的密文串】
    Algorithm used:  AES128    【加密算法】【加密算法必须和keygen中生成key_value的长度一致】
GGSCI > encrypt password ogg AES192 encryptkey zzt_192    【自定义公钥和加密算法】
    Encrypted password:  AADAAAAAAAAAAADAPHDFDDOIEDCIHJHJECSBBFLBKGFDCBEDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA    【加密后的密文串】
    Algorithm used:  AES192    【加密算法】【加密算法必须和keygen中生成key_value的长度一致】
GGSCI > encrypt password ogg AES256 encryptkey zzt_256    【自定义公钥和加密算法】
    Encrypted password:  AADAAAAAAAAAAADAYCMAZBECHGMGRIMGUJKESFRCVIVDHJWFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA    【加密后的密文串】
    Algorithm used:  AES256    【加密算法】【加密算法必须和keygen中生成key_value的长度一致】

※ 错误的案例A

温馨提示:如果加密算法和key_value不匹配就会导致下面的提示
GGSCI > encrypt password ogg AES256 encryptkey zzt_192
    Password encryption failed.
    Error (-11) retrieving key for zzt_192 in file ENCKEYS: The length of the key specified in KEYNAME does not match the encryption method. AES192..

※ 错误的案例B

温馨提示:必须使用秘钥别名而不能使用秘钥串,否则就会导致下面的提示
GGSCI (rac2) 10> encrypt password ogg AES128 encryptkey 0x69135221D7628B6983FE6F552AC7DB6D
    Password encryption failed.
    Error (-11) retrieving key for 0x69135221D7628B6983FE6F552AC7DB6D in file ENCKEYS: The key specified with KEYNAME is not present in the ENCKEYS file. AES128..

✔ 登录测试

GGSCI > dblogin userid ogg ,password AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB ,BLOWFISH ,encryptkey default
    Successfully logged into database.    【成功登陆】
GGSCI > dblogin userid ogg ,password AADAAAAAAAAAAADAYFRAIGKAYBAHQIRIJGQFPHMEMAXEQHTFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ,AES128 ,encryptkey zzt_128
    Successfully logged into database.    【成功登陆】
GGSCI > dblogin userid ogg ,password AADAAAAAAAAAAADAPHDFDDOIEDCIHJHJECSBBFLBKGFDCBEDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ,AES192 ,encryptkey zzt_192
    Successfully logged into database.    【成功登陆】
GGSCI > dblogin userid ogg ,password AADAAAAAAAAAAADAYCMAZBECHGMGRIMGUJKESFRCVIVDHJWFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ,AES256 ,encryptkey zzt_256
    Successfully logged into database.    【成功登陆】

✔ 替换参数中的明文密码

温馨提示:注释或删除旧的明文密码格式,并用新的密文格式替换
GGSCI > edit param XXX
    ……
    userid ogg,password ogg        【删除旧的明文密码格式】
    userid ogg ,password AADAAAAAAAAAAADAYFRAIGKAYBAHQIRIJGQFPHMEMAXEQHTFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ,AES128 ,encryptkey zzt_128    【替换新的密文密码格式】
    ……

✔ 替换后建议重启相关OGG进程进行密码生效

 

 

※ 如果您觉得文章写的还不错, 别忘了在文末给作者点个赞哦 ~

Oracle GoldenGate密码加密

over

上一篇:图解 Vue 异步更新原理


下一篇:【JavaScript】猜数字游戏