17

R ロギング パッケージにセントリー ハンドラーを追加しています。現在、django-sentryは、安全なチャネルでクリア テキストで移動する共有キーに基づいて、クライアント (ログ レコードを送信するアプリケーション) を検証します。

R からの暗号化、できれば非対称の公開鍵ベースの暗号化が可能かどうか疑問に思っていましたが、関連するものは何も見つかりません。

「可能であれば」ではなく、「それを行う方法」と、誰かがすでにこれを行っているかどうか。


django-sentry の作成者とやり取りした後hmac、R パッケージ内に実装したを選択しましたdigest(バージョン 0.5+ に含まれています)。これは、「R を使用してデータを暗号化する方法」という質問には答え ませんが、私の最初の質問の基礎となった問題を解決します。

現時点では、私は R の非対称暗号化に積極的に取り組んでいませんが、それに興味があり、アイデアやコードに貢献したい場合は、ここにメモを残してください!

4

3 に答える 3

7

著者 Simon UrbanekのPKI パッケージにも適切な機能があるかもしれません。

このパッケージは、証明書の検証、RSA 暗号化、署名などの PKI 機能を提供します。これらは、PKI インフラストラクチャを構築し、暗号化タスクを実行するために使用できます。

チュートリアルのコード例:

require(PKI)
key <- PKI.genRSAkey(2048)
x <- charToRaw("Hello, world!")
e <- PKI.encrypt(x, key)
y <- PKI.decrypt(e, key)
stopifnot(identical(x, y))
print(rawToChar(y))

結果として与えます:[1] "Hello, world!"

暗号化されたメッセージeは次のとおりでした。

  [1] 36 83 d3 70 0a 67 b5 05 a6 40 1e 37 28 b9 4e 28 f1 31 92 14 2c 35 c8 8a 61 93 1e 04 62 01 da 3b 2b a0 75 1c 10 58 26
 [40] e4 77 da 7a 47 3f 4e 44 29 8e 97 6f 62 b1 98 44 ba 18 ef 57 1e 9e 9c 27 a8 6e 9c 7b c7 8b c0 c3 a3 00 e2 67 98 8b 6e
 [79] 1a 93 c6 d6 ed 4b 54 e5 7a 07 d7 06 ef a6 bb 36 6a 7f 57 06 b9 15 03 f6 51 3f 07 48 cb f4 2d 25 15 be 42 de f4 8a 06
[118] 72 89 b1 e3 04 d3 ec 80 99 f0 66 0f 84 e1 b5 af 23 24 a1 36 8e 62 65 ae 19 fb 77 d1 36 06 ae 71 95 ee 57 aa 68 5a 6b
[157] 4e 28 ba a2 0d 17 78 11 6c 7f 1b b3 ce 31 65 a9 d3 71 89 76 f9 19 a0 7a bf 02 dd c9 1f cb 9c 39 25 d4 48 a2 23 83 26
[196] b4 a9 b1 40 f5 1d 46 21 35 12 52 73 09 9b f3 52 e1 9e 0d 2a 9b ff 70 81 41 24 49 ed 58 b2 61 dc 3e c9 b3 b2 b1 37 e0
[235] 48 76 18 bf b0 e5 c2 d9 2b 92 2f 6b 49 dd e0 93 b7 10 f8 ba d2 8a
于 2013-09-14T07:45:15.293 に答える
3

これは古いスレッドですが、他の人がこれに出くわした場合に備えて、Hadley による安全なパッケージがあるようです。readme には次のように記載されています。

安全なパッケージは、公開されているコード リポジトリ内に安全なボールトを提供します。個人情報を公開リポジトリに保存して、選択した人だけが読めるようにすることができます。これは、プライベート資格情報をパブリック リポジトリに保存できるようになったため、テストに特に役立ちます。

セキュアは、非対称 (公開/秘密キー) 暗号化の上に構築されています。Secure はランダムなマスター キーを生成し、vault/ 内の各ファイルを (AES256 で) 暗号化するために使用します。マスター キーは暗号化されずにどこにも保存されません。代わりに、暗号化されたコピーがユーザーごとに保存され、独自の公開鍵が使用されます。各ユーザーは、秘密鍵を使用して暗号化されたマスター キーを復号化し、それを使用して各ファイルを復号化できます。

于 2016-06-18T11:10:43.987 に答える