aws / aws/aws-encryption-sdk-java

Question : how to random access or skip during decryption

クローズ
#2,121 コメント 4 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Java
スター
240
フォーク
125
PR マージ指標
30日以内にマージされた PR はありません

説明

### Problem:

I have a need to handle large files and service a random address range for decryption.
Looking throgh the exampes I dont see an effecient way to do this.
It seems that the underlying encryption data is framed, but the CryptoInputStream doesn't skip in an input stream, and there isnt a support for a Readable Channel that I am aware of

### Solution:
With the existing API - I could use skip in the InputStream, but this will (as I see it) decrypt and throw away the skipped bytes, with extra I/O and CPU load
With an enhanced implementation we could skip on the input stream to the start of a frame and then decrypt that frame (skipping internally to the offset needed by decodng and thowin a few bytes if needed)

### Out of scope:

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

既存の CryptoInputStream API と、そのフレーム化された暗号化入力の動作から始め、InputStream.skip と、要求されている Readable Channel のサポートを比較します。呼び出し元が関連するフレームまでシークして、破棄するバイトの復号と I/O を回避しながら、任意のアドレス範囲を処理できれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
aws, java
領域
security
issue の種類
機能追加
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。