当前位置: 首页 > news >正文

网站不备案怎么回事网站建设竞品调研

网站不备案怎么回事,网站建设竞品调研,什么网站可以直接做word,山东青岛最新情况基础算法说明 https://www.youtube.com/watch?vlnKPoWZnNNM 虽然这个视频讲的非常详细#xff0c;但是涉及到具体底层算法#xff0c;大致流程 1. 将数据转成HEX或者byte array 2.将数据分层一块块等大小的数据 3.将数据和key 进行一次混合#xff0c;加密之后的输出lnKPoWZnNNM 虽然这个视频讲的非常详细但是涉及到具体底层算法大致流程 1. 将数据转成HEX或者byte array 2.将数据分层一块块等大小的数据 3.将数据和key 进行一次混合加密之后的输出在生成新的key 4.将新的key和下一个数据进行加密计算继续重复 生成的KEY长度有128,192,256不同的的长度对算法的速度有影响 当然key的长度越长可能越安全这样 具体的算法是什么呢 为什么要有IV 另外这篇 https://www.youtube.com/watch?vuWEPEBmFBHw 我们在AES的时候有key了为什么要IV呢 大概解释是IV是个Ramdom的参数不然每次用key算出来的值是一样的 所以加上IV后计算出来的结果会不一样。 Android上的具体AES实现 然后就是PL这个在Android上AES加密的具体实现 https://github.com/philipplackner/AndroidCrypto/tree/encrypt/decrypt 或者参考这个文档 https://medium.com/jerry.cho.dev/android-keystore-aa7d2b43adfe 基本差不多 1.加密管理器 key的初始化和获取 RequiresApi(Build.VERSION_CODES.M) class CryptoManager {//获取keystroe,用于存放加密的keyprivate val keyStore KeyStore.getInstance(AndroidKeyStore).apply {load(null)}//获取加密器模式是ENCRYPT_MODEprivate val encryptCipher get() Cipher.getInstance(TRANSFORMATION).apply {init(Cipher.ENCRYPT_MODE, getKey())}//解码器模式DECRYPT_MODEprivate fun getDecryptCipherForIv(iv: ByteArray): Cipher {return Cipher.getInstance(TRANSFORMATION).apply {init(Cipher.DECRYPT_MODE, getKey(), IvParameterSpec(iv))}}//加密秘钥存储在keystroe中private fun getKey(): SecretKey {val existingKey keyStore.getEntry(secret, null) as? KeyStore.SecretKeyEntryreturn existingKey?.secretKey ?: createKey()}private fun createKey(): SecretKey {return KeyGenerator.getInstance(ALGORITHM).apply {init(KeyGenParameterSpec.Builder(secret,KeyProperties.PURPOSE_ENCRYPT or KeyProperties.PURPOSE_DECRYPT).setBlockModes(BLOCK_MODE).setEncryptionPaddings(PADDING).setUserAuthenticationRequired(false).setRandomizedEncryptionRequired(true).build())}.generateKey()}//把byte进行加密写入IV写入机密后的bytesfun encrypt(bytes: ByteArray, outputStream: OutputStream): ByteArray {val encryptedBytes encryptCipher.doFinal(bytes)outputStream.use {it.write(encryptCipher.iv.size)it.write(encryptCipher.iv)it.write(encryptedBytes.size)it.write(encryptedBytes)}return encryptedBytes}//解码读取IV根据IV再解码fun decrypt(inputStream: InputStream): ByteArray {return inputStream.use {val ivSize it.read()val iv ByteArray(ivSize)it.read(iv)val encryptedBytesSize it.read()val encryptedBytes ByteArray(encryptedBytesSize)it.read(encryptedBytes)getDecryptCipherForIv(iv).doFinal(encryptedBytes)}}companion object {private const val ALGORITHM KeyProperties.KEY_ALGORITHM_AESprivate const val BLOCK_MODE KeyProperties.BLOCK_MODE_CBCprivate const val PADDING KeyProperties.ENCRYPTION_PADDING_PKCS7private const val TRANSFORMATION $ALGORITHM/$BLOCK_MODE/$PADDING}} 2.加密 val bytes messageToEncrypt.encodeToByteArray()val file File(filesDir, secret.txt)if(!file.exists()) {file.createNewFile()}val fos FileOutputStream(file)messageToDecrypt cryptoManager.encrypt(bytes bytes,outputStream fos).decodeToString() 3.解密 val file File(filesDir, secret.txt)messageToEncrypt cryptoManager.decrypt(inputStream FileInputStream(file)).decodeToString()
http://www.w-s-a.com/news/25219/

相关文章:

  • ps做网站界面wordpress为图片添加圆角
  • seo优化推广业务员招聘seo顾问服务福建
  • 成都私人网站建设seo网站推广方案策划书
  • 广州网站建设工作室wordpress log
  • 网站后台添加wordpress h1标签优化
  • 自己做网站都需要什么高密 网站建设
  • 网站语言选择郑州本地做团购的网站
  • dw网页设计模板图片谷歌wordpress优化
  • 网站seo优化要怎么做礼品公司怎么做网站
  • 做网页网站需要钱吗提供常州微信网站建设
  • 网站建设文化效果广东网站建设哪家有
  • 毕业设计做网站怎样做特别一点在线网页制作软件
  • html网站代码上海这边敲墙拆旧做啥网站的比较多
  • 微网站怎么用在线crm管理系统
  • 中国城乡建设部人力网站首页如何利用某个软件做一个网站
  • 个人承接网站建设wordpress editor
  • 建站主机 wordpress专业的菏泽网站建设公司
  • 网站响应时间 标准网站建设色调的
  • 网站开发的合同网站建设 设计
  • 网站开发设置网页端口申请免费个人网站空间
  • 制作广告网站的步骤云服务器做网站
  • ipv6可以做网站吗东莞网站建站推广
  • 注册功能的网站怎么做做网站容易还是编程容易
  • wordpress建立目录seo编辑培训
  • 网站怎么群发广州现在可以正常出入吗
  • 微信有网站开发吗多语种网站
  • 深圳网站设计 建设首选深圳市室内设计公司排名前50
  • 上海网站建设 觉策动力wordpress接口开发
  • 网站建设服务器的选择方案小型视频网站建设
  • 江宁做网站价格扬州立扬计算机培训网站建设怎么样