IDカードと携帯電話番号の暗号化されたストレージに関するいくつかのアイデア

過去2年間で、機密性の高い個人情報の保存、送信、交換が国内でますます重要になっています。携帯電話番号やIDカードなどの機密性の高い個人情報を取得する場合は、対象者の積極的な承認が必要です。

0x01:
携帯電話番号やIDカードをデータベースに直接保存するなど、機密情報が漏洩してプレーンテキストで保存される方法は何ですかデータユーザーとパスワードが多くの幹部に見られるべきではない場合、
たとえば機密情報のRSAまたはAES暗号化がないなど、明確に送信される漏洩を引き起こしやすい場合、ネットワーク、
グループの子会社、またはサードパーティシステムシステムが接続されると、機密データが交換されます。システムの機密情報を無断で第三者に送信することです
。0x02:機密情報の漏えいを解決する最善の方法。
テキスト
ストレージをクリアします。データの機密情報を暗号化した後、保存します。このようなシナリオがあります。他のフィールドに加えて、ユーザーテーブルにはmobile_noとidentity_cardの2つの機密情報ストレージフィールドがあります。mobile_noとidentity_cardの平文を直接保存すると、リークしやすくなります。

これらの2つのフィールドは、ストレージ用に対称暗号化または非対称暗号化でき、2つの暗号化フィールドmobile_no_encryptedおよびidentity_card_encryptedをそれぞれ定義できます。ただし、データベースへの暗号化されたストレージは、必然的に次の2つの問題を引き起こします。

正確なクエリマッチングを実行する方法

ファジークエリマッチング
を実行する方法正確なクエリマッチングを実行する方法は?
この問題を解決するために、もう1つのフィールドが追加され、mobile_no_shaフィールドが携帯電話番号に追加され、identity_card_shaフィールドがIDカードに追加されます。これらの2つのフィールドには、それぞれ携帯電話番号とIDカードのSHA-1ハッシュコードが格納されます(md5アルゴリズムも使用できます)。この場合、クエリが正確であれば、SHA-1ハッシュコードを直接比較できます。

select * from t_user where mobile_no_sha = sha-1(mobile_no)ファジークエリマッチングを実行する方法は?

対応するファジークエリは少し面倒です!

通常、データベースには、MySQL PASSWORD、MD5、AES_ENCRYPTなどの暗号化および復号化機能が付属しています。パスワードなどの情報には一方向の暗号化を使用でき、検証時に同じ方法を使用して暗号化と照合を行うことができます。元のコンテンツを比較する必要があるファジークエリの場合、双方向暗号化を使用する必要があります。つまり、復号化でき、MySQLは独自のAES暗号化を使用できます。ストレージの暗号化と読み取りおよび復号化を完了すると、あいまい検索を実現できます。

select * 
from t_user 
where AES_DECRYPT(UNHEX(mobile_no_sha ),'key') 
like 'xxx%';
复制代码

この関数を使用して元のコンテンツを復元し、キーワードマッチングのように使用してあいまい検索を実現します。

MySQLはAES_ENCRYPT()/ AES_DECRYPT()を使用して、正しいポスチャを暗号化および復号化します

http://blog.itpub.net/29773961/viewspace-2142305/
复制代码

プレーンテキスト送信
プレーンテキスト送信の場合、最初にhttp送信プロトコルが破棄され、https送信プロトコルが採用されます。セキュリティレベルを強化したい場合は、機密情報に対して追加の暗号化を実行するための暗号化方法を自分で定義します。たとえば、カスタム暗号化には対称暗号化AESまたは非対称暗号化RSAを使用します。

グループ子会社やサードパーティのシステムがシステムに接続されている場合、機密データの交換
がより面倒になります。この状況はより面倒であり、グループ子会社とサードパーティ企業の間のデータ交換に分けられます。


グループ内の子会社間のデータ交換。グループ会社は関心のあるコミュニティです。たとえば、そのようなシナリオがあります。グループAには保険会社とTo Cモールシステムがあります。これは可能ですか?保険会社は多くの個人情報を収集し、ビッグデータでこれらの個人の状況を分析して、どちらの人がより多くのお金を持っているかを確認し、保険を合理的に推進する必要があります。お疲れ様でした。モールから多くの方にご登録いただき、個人の電話番号などをたくさん入手してください。

サードパーティ企業間のデータ交換
サードパーティ企業のシステム間のデータ交換用。また、インターフェイスが呼び出されたときに機密情報を送信する場合もあります。過去2年間に、SFロジスティクスとCainiao Logisticsの間でこのようなことが起こったことを覚えています。つまり、CainiaoLogisticsはSFLogisticsにすべてのロジスティクス情報をアップロードする必要があり、SFはこれら2つのシステム間の相互作用を直接中断しました。

どちらの場合も、わかりやすい場所でユーザーの同意を提供する必要があり、データの交換は、対象者が承認に同意した場合にのみ可能だと思います。しかし、これら2つのケースでは、データを密かに交換するためにこのチャネルをたどった企業はほとんどありません。

参照:「2020年の最新のJavaの基本と詳細なビデオチュートリアルおよび学習ルート!

リンク:https://segmentfault.com/a/1190000038989434

おすすめ

転載: blog.csdn.net/weixin_46699878/article/details/112651925