• 締切済み

テキストの暗号化

 VB6.0のwriteステートメントでテキストファイルを作成し、 VB.NETのStreamReaderで読み込むプログラムを書いています。  暗号化とまではいかないまでも、このプログラムに少し手を加えて、 作成したテキストファイルをメモ帳やワードパットなどでは読めないようにしてみたいのです。  実際にどのような方法があるのかと、その具体的な手順をご教授頂ければ幸いです。  ちなみに当方、素人に毛が生えた程度のレベルです。  よろしくお願いします。

noname#204648
noname#204648

みんなの回答

  • rouden
  • ベストアンサー率30% (13/43)
回答No.2

補足を読みました。 日本語(2バイト文字)も含んでいて、バイナリで出力(保存)みたいなことを考えているのですか・・・。 いちお、自分のところにそのことをほぼ完全(?)に満たす『暗号・復号』が出来るプログラムがありましたが・・・、「VB.NET」で作成されていて、「StreamReader」を使わずにバイナリファイルを読み書きするプログラムです。 FileOpen(・・・省略・・・, OpenMode.Binary) でファイルを開いて、 FileGet(・・・省略・・・) で読み込んで FilePut(・・・省略・・・) で書き込む それでもよろしければ、(暗号・復号)プログラムコードを丸ごと(自分のホームページで)公開しますけど・・・。

noname#204648
質問者

お礼

返事が遅くなり大変申し訳ありませんでした。 更なる回答、ありがとうございました。

noname#204648
質問者

補足

ヒントを頂きありがとうございました。公開まで申し出て頂けるなんて・・・ ただ、この件に関しましては当分保留としたまま、次へ進むことになりました。 再度この話が持ち上がったときに、こちらのヒントを元にもう一度検討してみます。 解決とはいきませんでしたが、気持ちとして少々のポイントをつけさせて頂きます。 ありがとうございました。

  • rouden
  • ベストアンサー率30% (13/43)
回答No.1

自分が以前作成した、簡単な暗号プログラムです。参考になればいいのですが・・・。 ちなみに、この暗号プログラムは1バイト文字にしか対応していません。 「Visual Basic .NET」で作成されています。 Dim I As Integer , C As Integer Dim Max As Integer Dim Str1 As String '暗号前の文章を入れる変数 Dim Str2 As String '暗号後の文章を入れる変数 Str1 = "abcdefg" '暗号化する文章 Max = Len(Str1) '暗号化する文章の文字数を取得 For I = 1 to Max C = Asc(Mid(Str1 ,I ,1)) '文字コード(十進数)を取得 C += 10 '文字コードを「10」ずらす '▽エラー回避処理▽ If 256 < C Then C -= 256 Else If C < 0 Then C += 256 End If '△エラー回避処理終わり△ Str2 &= Chr(C) '文字コードを文字に戻して変数に保存 Next I Msgbox(Str2) '暗号結果を表示(「qrstuvw」と表示されるはずです)

noname#204648
質問者

お礼

お返事ありがとうございます。

noname#204648
質問者

補足

説明不足ですみません。 テキストの内容に、日本語も含んでいるんです。 Unicodeで出力するとか、バイナリ?なども考えているんですけど・・・

関連するQ&A

  • WINとMACで認識できるテキスト

    友人が作成したアプリケーション(WIN MAC対応)を知人に配布したいと考えています。exeは別に良いのですが、使い方などのテキストを添付したいのですが、当方MACに関しまして全くわかりません。MACでは「メモ帳」や「ワードパット」など開けるのでしょうか? お聞きしたいのは、MAC利用者全員が簡単に閲覧できるものを教えてください。 超初心者な質問ですみません。

    • ベストアンサー
    • Mac
  • 圧縮ファイルダウンロードすると暗号文にて表示される

    2回目の質問になります。先の質問にて圧縮ファイルをダウンロードするとワードパットから表示され、内容が暗号文にて読めない。と質問しましたが、解決されませんでしたのでもう少し詳しく説明いたします。以前かなり前なんですが、圧縮ファイルをクリックした時に、このファイルを何に表示するのか?等の選択画面が現れ、その時にワードパットを間違えて選択しokボタンを押したような覚えがあります。それが実行されて今回のような圧縮ファイルをダウンロードするとワードパットから表示され内容が暗号文のまま表示されたのではと思います。圧縮ファイルをダウンロード後、ワードパットからではなく、別のところから表示したいのですが、どなたかこの選択項目を変更するすべをご存知の方いましたら教えていただけませんでしょうか?色々やってみましたが上手くいきません。

  • ファイルを暗号化したい

    こんにちは。 外出先でPDAで業務データを入力し、このデータをテキスト化(CSVファイル)します。 テキスト化したファイルをFOMAで会社のFTPサーバーに飛ばそうと 思っているのですが、送るファイルがテキストファイルなので セキュリティの面で心配です。 そこで、PDAで作成したファイルを暗号化し、会社のFTPサーバーでは 複合化してからDBに登録しようと考えているのですが、そのような 事は可能でしょうか? できれば、アプリの中からAPIを呼び出す形で暗号化・複合化したいのですが。 そのようなことができる暗号化ソフトをご存知でしたらご教示ください。 宜しくお願いいたします。

  • 参照するテキストファイルの数

    決め打ちのSQL文を記述したテキストファイルをOpenステートメントで 読み込み、テキストボックスへ表示させています。 できるだけVBのコードをメンテしないようにしたいので、テキストファイルで SQLを持っているのですが、いろんなパターンのSQL文がありテキストファイルが 8ファイルくらいになってしまいます。 参照する為のテキストファイルは、何ファイルくらいまでが理想なんでしょうか? いくつもあってもかまわないのでしょうか? 教えていただけませんでしょうか?? よろしくお願いいたします。

  • テキストドキュメントを開けないのですが。

     テキストドキュメント(メモ帳)が開けなくて困っています。  プログラムから開く→WordPadで開くと内容は変っていないのですが。  テキストドキュメントを開こうとダブルクリックすると○○.tmp というTMP ファイルが作成されます。  そのTMP ファイルを極窓で拡張子の判別をするとexeファイルのようです。  どなたかわかる方、よろしくお願いいたします。

  • 共通鍵、暗号鍵などの具体的な使い方って?

    基本情報等で習う暗号化についてなのですが 鍵を使って暗号化するというのは理解できるのですが では実際に使ってみましょう、となるとどうすればいいのかさっぱりです。 他にもいろいろと疑問があるのですが 例えば・・・ 1、メモ帳やWordを使って文章を書いた、これを友達に送りたいが公開鍵で暗号化して送りたい!どうすればいいのか? 2、仕事で顧客にメールを送りたいが、暗号化したい。どうすれば? 3、そもそも鍵の作り方ってどうすればいいのか?   個人利用であれば何かソフトをインストールして作るのか。 4、企業などでは自社独自に鍵を生成するサーバみたいなのがあるのでしょうか? 技術的な話や論理的な話は、どの本やサイトにも解説があるのですが 実際に使う方法などの説明が全然見つからなく、全然イメージがわかないのです。 暗号化ソフトみたいなものに、暗号化したいテキストファイルを読み込ませて 鍵作成ソフトで作った鍵を指定する・・・みたいな使い方なんでしょうか? 複合の仕方も具体的に知りたいです。

  • テキストファイルを読んで、Excel型のOLEコンテナに表示するには?

    あるテキストファイルを編集するVBアプリケーションを作成しています。 テキストファイルの内容をEXCEL形式のOLEコンテナに表示させ、それを編集し、 その結果を再びテキストファイルに書き込みたいのですが、 表示させるまでの手順が全くわかりません。 テキストファイルの操作はわかります。 OLEコンテナ関連の操作が全くわかりません。 どなたか教えて下さい。 環境はWin2000、VB6.0です。

  • ウィンドウズでlinuxのテキストを作成するには?

    linuxでjavaプログラムを作った。で、このファイルはテキストファイルを読んで動くことになる。このときGNOMEテキストエディタで作ったファイルなら問題ないがウィンドウズのメモ帳でUTF-8で保存しても動きがおかしくなる。ウィンドウズでGNOMEテキストエディタが作成するものとまったく同じものを作りたいがどうしたらいいですか?

  • ComoBoxでテキストファイルの内容をどうやれば読み込みできますか?

    C#でプログラムを開発しております。 問題は ComonBoxを使って テキストファイルにあるデータをどうやれば読取できますか? 例えば;テキストファイルに 1 2 3 4 四行で、ComoBoxでこの四行を見れるようにしたいですけど。 今は  StreamReader sr = new StreamReader(@"c:\\11.text", Encoding.Default); ComoBox.Items.Add()=sr.readline();を使って失敗しました。エラーはStringの値をIntに変換できないだと提示した。 お願いします。

  • VC++2005 StreamReader

    以前、ここでテキストボックスに保存してあるテキストファイルの表示方法を教えていただきました。 そのときの回答では、読み込みたいファイル名をまずテキストボックスに入れてStreamReaderを使って他のテキストボックスに表示するというプログラムを教えていただきました。 そこで今回質問したいことは、最初にファイル名をテキストボックスに入れずにファイルを表示するのはどうすればよいのかということです。 以下に現在使っているプログラムを書きます。 よろしくお願いします。 textBox1->Text = "p12.txt"; ←この部分について StreamReader^ streamReader = gcnew StreamReader(textBox1->Text); textBox2->Text = streamReader->ReadToEnd();

専門家に質問してみよう