問題タブ [hexdump]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 同じサイズの2つの大きなファイルの量的な違いを表す情報は何ですか?
通常、2つのバイナリファイルの違いを見つけるために、diffツールとhexdumpツールを使用します。しかし、状況によっては、同じサイズの2つの大きなバイナリファイルが与えられた場合、差異の領域の数、累積的な差異など、それらの量的な差異のみを確認したいと思います。
例:2つのファイルAとB。2つの差分領域があり、累積差は6c-a3 + 6c-11 + 6f-6e+20-22です。
標準のGNUツールとBashを使用してこのような情報を取得するにはどうすればよいですか、それとも単純なPythonスクリプトを使用する方がよいでしょうか。2つのファイルの違いに関する他の統計も役立ちますが、他に何があり、どのように測定できるのかわかりません。エントロピーの違い?分散の違い?
shell - shell/awkでhexdumpファイルをバイトごとに読み取る
私は bash/awk プログラミングが初めてで、すぐにあなたの助けが必要です
これは、tcpdump によってキャプチャされた ipv6 tcp パケットの 16 進数の出力です -
{5} は 32 ビット ワードで tcp パケットの長さを指定し、tcp パケットは b/w *s です。
ここで、bash/awk スクリプトを使用して、この情報から tcp ヘッダーを抽出する必要があります。
tcpで指定された長さまでファイルをバイトごとに読み取る必要があると思いますが、これを行う方法がわかりません。
したがって、上記の出力からtcp情報を抽出する方法は、ファイルに書き込まれていると仮定します。
事前にサンクス..
linux - hexdump と xxd は、Red Hat と ubuntu/mint で異なる出力を生成します
まず、私のLinux mint/ubuntuシステムで起こったことについて言及しています...
同じことを red hat で試してみると、奇妙な動作が発生しています。
Red Hat と Linux mint/ubuntu の出力間でこの不一致が発生する理由を見つけることができません。
可能であれば、代わりに同じことを実行する awk/shell を教えてくださいxxd -r -p
助けてください!!
編集:
Linux mint/ubuntu システムで ..
赤い帽子のマシンで..
parsing - UNIX でバイナリ ファイルを作成する
この質問はしばらく前からありましたが、それを機能させることができれば、いくつかのボーナスポイントを提供する必要があると思いました.
私は何をしましたか…</h1>
最近、職場で、バイナリ ファイルを読み取り可能な形式に変換するパーサーを作成しました。バイナリ ファイルは、10101010
文字を含む ASCII ファイルではありません。バイナリでエンコードされています。したがってcat
、ファイルに対して a を実行すると、次のようになります-
そこでhexdump
、ユーティリティを使用してコンテンツに続いてファイルを表示し、ファイルにリダイレクトしました。これで、16 進値を含むテキスト ファイルである出力ファイルができました。
大量のawk
、sed
およびのcut
後、スクリプトは 16 進値を読み取り可能なテキストに変換しました。そのために、変換された各パラメータの開始位置と終了位置をマークするオフセット位置を使用しました。すべての変換後の結果ファイルは次のようになります
なぜ私はそれをしたのですか
私はテスト エンジニアであり、バイナリ ファイルを手動で検証することは大きな苦痛でした。手動でオフセットを解析し、電卓を使用してそれらを変換し、Wireshark と GUI に対して検証する必要がありました。
さて質問部分
今までと逆のことをしたい。これが私の計画だった -
- 読みやすい入力テキスト ファイルを用意します
Parameters : Values
。 - ユーザーは単純にそれらの横に値を入力できます (たとえば、日付はパラメーターであり、ユーザーはデータ ファイルに含める日付を指定できます)。
- スクリプトは、入力テキスト ファイルからすべての関連情報 (ユーザーが提供した情報) を切り取り、それらを 16 進数値に変換します。
- ファイルが 16 進値に変換されたら、それをバイナリにエンコードしたいと思います。
最初の 3 つのステップが完了しました
問題
スクリプトが入力テキスト ファイルを 16 進数値のテキスト ファイルに変換すると、次のようなファイルが得られます (これで実行できることに注意cat
してください)。
私の意図は、この変換されたファイルをバイナリにエンコードして、ファイルを処理すると大量のガベージ値が得られるようにすることです。cat
質問はこれです。この形式でエンコードするにはどうすればよいですか?
なぜ私はこれをしたいのですか?
本番環境では、多くの GTP (GPRS Tunneling Protocol) メッセージはありません。これをリバースエンジニアリングすれば、効果的にデータジェネレーターを作成し、独自のデータを作成できると思いました。
まとめて
世の中には洗練されたツールがあるかもしれませんが、私はそれらの学習にあまり時間をかけたくありません。約 2 か月が経ちました。*nix プラットフォームの作業を開始し、 や などのパワー ツールを使い始めましsed
たawk
。
私が欲しいのは、これを実現するための助けとガイダンスです。
読んでくれてありがとう!正しい方向に私を導くことができる誰かを 200 ポイントが待っています。:)
サンプルファイル
元のバイナリ ファイルのサンプルを次に示します。
ユーザーが値を入力できる入力テキスト ファイルのサンプルを次に示します。
以下は、入力テキスト ファイルからのすべての変換が完了した後にスクリプトが作成するファイルのサンプルです。
File 3
のエンコーディングをに変更するにはどうすればよいFile 1
ですか?
bash - Bashを使用してバイナリファイルを作成するには?
bash で結果のバイナリ値を含むバイナリ ファイルを作成するにはどうすればよいですか?
お気に入り:
C では、次のようにします。
これは私が欲しかったものです:
security - Go - バイナリのパスワード セキュリティ
Go アプリケーションにパスワード/秘密鍵を保存して、他のアプリケーションとの通信に使用するつもりです。たとえば、誰かがバイナリを取得して16進ビューアで検索するのを防ぐ方法を知りたいです。そのようなセキュリティ慣行は一般的ですか、それとも心配しすぎですか?
binary - 16進エディタに表示される16進コードに関する質問
Hex Editor(Hex Editor Neo)に表示されるHEX(intel hex)形式に固執しています。わかりました、私は16進数、10進数、2進数、それらの加算、乗算、それらの変換を知っています。
元。sample.jpg(これは、4列の16進形式のHex Editor Neoで開くjpgファイルです)
これ(これらはファイル全体の行の一部です)タイプの16進コードが表示されます。私はそれらが何を意味するのかに興味がありますか?私はffd8ffe0がjpgを教えてくれることを知っています。私はjpgがffd9で終わることを知っています。他のコードについて知りたいのですが、なぜそれらがそれらであるのかということです。それらは何らかの意味を持っているか、画像から16進数への変換がどのように行われるかを示している必要があります。
「4a464946 00」と他の多くの人がそこにいるとはどういう意味ですか?
endianness - 16進オフセット
私はいくつかの16進コードを見ていましたが、誰かがオフセットを見るように言いました:0x830880ECはリトルエンディアンとして保存されていますが、これはどういう意味ですか?HxD Workshopにリストされているオフセットを参照すると、このようなものは何も表示されません。0xは何らかの形のプレフィックスか何かであると確信していますが、それが何を意味するのかわかりません。誰かが私を助けてもらえますか?前もって感謝します!
hex - Neo Hex Editor で 16 進数のファイルを開く
ファイルを 16 進数で解釈する必要があることがよくあります (16 進ダンプと呼ばれることもあります)。マイクロコントローラからメモリを読み込んで理解する必要があるので、Neo-Hex Editor が役立つと考えました。しかし、Neo Hex Editor は Intex-Hex Format、Motorola Hex format、Exe ファイル、Image ファイルなどを開くことができることがわかりました。
しかし、私のファイルは一連の16進数です:
「0x0」、「0x0」、「0x6」、「0x0」、「0x78」、「0x56」、「0x34」、「0x12」、「0x5」、「0x0」、「0x1」....... .
特定の番号のアドレスの場所を確認できる Neo Hex Editor でそのようなファイルを開きたいです。右側などに相当する文字。
16 進数ファイルを適切な形式で配置する必要がある場合は、お知らせください。
ありがとう。
perl - ネイティブperlhexdump-ゼロ値をチェックするだけ
ディスクまたはディスクイメージが「空」であるかどうかを確認しようとしています。最初の1mbと最後の1mbがゼロの場合、これが当てはまると仮定します。私は再現を試みることから始めましたhexdump
が、この時点では少し混乱しているようです。
これが私のコードです:
これを行うためのより良い方法はありますか?