Releases: musashino205/firmware-wintools
Releases · musashino205/firmware-wintools
0.7.5
変更内容 (0.7.4 -> 0.7.5)
-
実装追加
BE16toHost()
,LE16toHost()
を追加
-
機能追加
silex-enc
機能を追加- DS-520ANやSX-AP-4800ANほかで使用されているファームウェア形式のデコードに対応
-
修正
nec-bsdfw
機能のヘルプでrtkweb
として表示されていたのを修正nec-bsdffs
機能のPrintHelp()
のsummaryでrtkweb
となっていたのを修正HeaderFooter
クラスのDeserializeProps()
において、ushort
のBE->Host変換を修正IPAddress.NetworkToHostOrder()
において引数がint
として扱われ、戻り値が狂っていた
0.7.4
変更内容 (0.7.3.2 -> 0.7.4)
-
実装追加
AesData()
追加- 指定したプロパティを基に入力元
Stream
のデータを指定長で復号し、出力先Stream
へ書き込む
- 指定したプロパティを基に入力元
- 7zipからLZMAライブラリをインポート
nec-bsdfw
機能において、LZMA圧縮データの展開をサポート
-
機能追加
netgear-encimg
追加- NETGEAR WAX202, WAX206など、アドレス
0x200
に"encrpted_img"
が存在するタイプのファームウェアを復号
- NETGEAR WAX202, WAX206など、アドレス
-
仕様変更
xorimage
機能の16進数パターン最大長を0x400
(1,024 bytes) へ拡大
-
その他
- 一部を除いた雑多機能を misc-tools ディレクトリへ移動
0.7.3.2
変更内容 (0.7.3 -> 0.7.3.2)
-
実装追加
- nec-bsdfwモードにおいて、gzip圧縮データの展開サポートを追加(
-d
オプション)
- nec-bsdfwモードにおいて、gzip圧縮データの展開サポートを追加(
-
その他
- nec-bsdfwモードにおけるバイナリ出力時のデータ読み取りを、バッファ一括から固定長バッファでのループに変更
0.7.3
変更内容 (0.7.2.1 -> 0.7.3)
-
機能追加
- nec-waenc 追加
- NEC UNIVERGE WAシリーズ用ファームウェアのエンコード/デコード
- nec-waenc 追加
0.7.2.1
変更内容 (0.7.2 -> 0.7.2.1)
-
修正
- nec-bsdffsモードのファイルシステム情報表示において、エンディアン変換前のMagic Numberを表示
- xorimageモードの16進数文字列変換時の非数値による例外を修正
- xorimageモードにおいて、16進数値指定時の
0x
プレフィクスを許容
- xorimageモードにおいて、16進数値指定時の
0.7.2
変更内容 (0.7.0 -> 0.7.2)
変更が多くなった為、0.7.1は飛ばします。
-
実装追加
- nec-bsdfwモードにLZMA圧縮有無の表示を追加
- nec-bsdffsモードに4バイト探索オプションを追加
- デフォルトの8バイト毎の探索の代わりに4バイト毎に行う場合、
-4
オプションを付けて実行- 例: eo-RT100
- デフォルトの8バイト毎の探索の代わりに4バイト毎に行う場合、
- nec-bsdffsモードでsuperblock->nindir = 512以外の場合(主に 1024)のサポートを追加
- 例: eo-RT100
-
仕様変更
- nec-bsdffsモードにおいて、superblock情報のオフセット表示をファイル内絶対値に変更
- xorimageモードの最大パターン長を
0x200
(512 bytes) に拡大
-
その他
- バイナリデータからクラス内要素をデシリアライズする
DeserializeProps()
をFirmware
クラスに追加
- バイナリデータからクラス内要素をデシリアライズする
0.7.0
変更内容 (0.6.6 -> 0.7.0)
-
実装追加
- aesモードにおいて、事前共有鍵による暗号化/復号のサポートを追加
- Key/IVを生成するダイジェスト方式は現状MD5のみ
- Saltは埋め込まれたもののみをサポート
- PBKDF2等は未サポート
- OpenSSLでは以下に相当
openssl aes-(128|256)-cbc -in <input> -out <output> -p pass:<password> -md md5 [-d]
- aesモードにおいて、事前共有鍵による暗号化/復号のサポートを追加
-
仕様変更
-
aesモードにおいて、パディングモードをPKCS#7に変更
- WG2600HP(2)等パディング無しの場合、復号の際パディングの削除でエラーになる為、同時に追加した
-n
オプションを使用する
- WG2600HP(2)等パディング無しの場合、復号の際パディングの削除でエラーになる為、同時に追加した
-
コマンドライン引数に機能名のみを指定した場合はヘルプを表示して終了
- 例:
> firmware-wintools.exe aes 使用方法: firmware-wintools aes [オプション...] 128/256 bit AES CBC によってイメージを暗号化 / 復号します 共通オプション: -i <ファイル> 入力元ファイル -o <ファイル> 出力先ファイル -Q 情報関連メッセージの出力を抑制します 機能オプション: -d 復号モードを使用します -k <キー> イメージの暗号化 / 復号に使用する <キー>(テキスト)を指定します -K <キー> イメージの暗号化 / 復号に使用する <キー>(16進数)を指定します -v <iv> イメージの暗号化 / 復号に使用する <iv>(テキスト)を指定します -V <iv> イメージの暗号化 / 復号に使用する <iv>(16進数)を指定します -p <パスワード> キーとIVの代わりにイメージの暗号化 / 復号に使用する <パスワード> を指定します (MD5) -l <長さ> 入力ファイルの暗号化 / 復号を行う長さを指定します -O <オフセット> 入力ファイルの暗号化 / 復号を開始するオフセットを指定します -s 128 bit の鍵長を使用します(デフォルト: 256 bit) -n 対象データ末尾のブロックパディングを無効にします
- 以前は入力ファイルチェックでエラー
- 例:
-
-
修正
どこかにバグ疑い箇所があって修正した記憶がある(忘れた)
-
その他
- 全体で引数解析をTools.Toolクラス内の
InitArgs
で行うように変更 - PrintHelpは独自の表示が不要なものは引数同様Tools.Toolの
PrintHelp
で行うように変更 - nec-encモードのxorロジックを簡略化
- 二重xorの固定パターン用のbyte配列を生成せず、キーによるxor時に同時に処理する
- nec-bsdffsモードにおいて、各フラグの
True
/False
をYes
/No
に変更
- 全体で引数解析をTools.Toolクラス内の
0.6.6
変更内容 (0.6.5.2 -> 0.6.6)
-
仕様変更
- nec-bsdffsにおけるデフォルトのFS展開先ディレクトリ名を necbsd-root へ変更
-
修正
- xorimageにおける16進数パターンの最大長を0x100 (256bytes)に修正
- nec-bsdffsのinodeデータ例外を修正
- nec-bsdffsでの展開時におけるディレクトリのmtime設定を修正のうえ復活
- hex2binにおいて文字列中のスペースを常に除去
-
その他
- 入力ファイルの存在性チェックを常に実施
- 全体的なデバッグコード整理
0.6.5.2
変更内容 (0.6.5.1 -> 0.6.5.2)
-
修正
- nec-bsdffsモードにおいて、ディレクトリinodeデータをパースする際のブロック数を修正
- 最初の1ブロック (0x200) 内にあるエントリしかパースできていなかった
- nec-bsdffsモードにおいて、ディレクトリinodeデータをパースする際のブロック数を修正
0.6.5.1
変更内容 (0.6.5 -> 0.6.5.1)
-
修正
- nec-bsdffsモードにおいて、特定の条件下でファイルシステムの展開/リスト表示時に例外を吐いていた問題を修正
- ディレクトリinodeのデータをパースする際の想定漏れ
- nec-bsdffsモードにおいて、特定の条件下でファイルシステムの展開/リスト表示時に例外を吐いていた問題を修正
-
その他
- README.mdを多少調整