• ベストアンサー

VBAプロジェクト パスワード解除 そんなのあるのですか?(解除しません、掛ける側の人間です)

趣味でフリーのソフトを作っています。 今、エクセルVBAでアプリを作ったので、「さあ、help書いて、vectorにでも公開しよう」と思い、  VBAだけど、ソース覗かれるのはちょっとなぁ~、パスワードの掛け方は?と検索したところ、出るわ出るわ、  (VBAプロジェクトでの)パスワード掛け方と、それを外すソフトと、 そのソフトでも外せないパスワードを掛けるソフト(シュアだった、なぜフリリーのソフトを公開するのにシュアを購入しないといけないの!!!)が・・・ で、質問です。VBAで作られてる方どうされてますか? 1.ソースも公開 2.とりあえず、パスワードはつけている  2.1 そのパスワードは単純な文字列  2.2 そのパスワードは日本語を混ぜた複雑なパスワード 3.外せないパスワードの掛け方を知っている 4.VBで作っているから関係ない 5.その他 回答が、  2.2の方 日本語混ぜたり複雑なパスワードにするのは有効な手段なのですか?  3.の方 方法を教えて下さい  5.の方 方法を教えて下さい パスワードを外すソフトは作者がパスワードを忘れた時用・・・<-嘘つけ  すみません。感情的になりました 少し、愚痴も入っていますが、お手すきの時にでもご回答頂ければ幸いです。 私は、1.か 2.2でパスワードを「みちゃいやん」にしようとかと思っています。

  • kag
  • お礼率100% (25/25)

質問者が選んだベストアンサー

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.3

#1です。 > 文字列を造出し、アタックするパターンの解読方法なのですね。 あまり詳しくないので明確な事は言えません。 また、#2さんが説明されているように全部がそうとは限らないと思います。 Project保護では無いですが、ブックやシートの保護解除ってやつを一度試した事があって、その時はそんな感じでした。 私が言いたかった事はフリーで公開されるおつもりなら、ソースコードのパスワード解除に躍起になる必要はないのでは?って事です。 そっち方面に注力するより、ソフトの機能向上に力を入れた方が建設的かと。 VBAじゃないですが、有名なシェアウェアの作者さんでイタチゴッコに憤怒してか、出回っているパスを入れたらHDDを消去するロジックを仕込む(間違って組みこんでしまった?)方もいましたね。 そんな風にはなりたくないものです。 以上、まとまりの無い文でスミマセン。

kag
質問者

お礼

作るのが好きなので、私もこんな(ソースの保護とか)にはあまり力を入れたくありませんしね。 適当にパスワードを入れて終わっておきます。 出回っているパスを入れたらHDDを消去するロジックを仕込む:確かこれによく似た事をしたのが、ウィルスの始まりはでしたね ウィルス扱いされても困るので、さすがにこれはしませんが・・・ 参考になりました、ご回答頂きありがとうございました。

その他の回答 (2)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。 私は、パスワードは、英数のみで、複雑なものは使っていませんし、また、いくつかあるツールも使っていません。たかがVBAだからこそ、対VBAプログラマーに対して、そのコードを見られても、容易には使えないような、構造化し分散処理などを施せば十分ではないでしょうか? もちろん、そのようなことを意図して、コードに反映させる必要はないのですが、そのコードを読んで分かるレベルなら、何も開けてみる必要もないし、読んで分からないレベルなら、開けても何の役にも立たないようなものを、コードとして書くべきでしょうね。そういうレベルでなければ、管理上簡単なパスを施しても、基本的にはオープン・ソースでよいと思います。 > 5.の方 方法を教えて下さい そのノウハウ自体は、結局は、Excel 2000より以下のバージョンロックの仕方であり、あくまでも、対クラッキング対策でしかありません。万が一にも、マイクロソフト社の開発で、古い技術をはじくようになったら、おしまいなのです。VBAの継続が問題にされている昨今ですから、今だけのもののように思います。それに、それ自体がオリジナルの技術とまで言えないのではないか、と思うのです。 現在、マイクロソフト社自身は、Office 2003 では、パスワードの暗号化処理をさせるようにはなり、また、デジタル証明書も強化しましたが、クラッキングされないかどうかは、私は知りません。 > 2.2の方 日本語混ぜたり複雑なパスワードにするのは有効な手段なのですか? クラッキング・プログラムを使われたら、それ自体は無効のはずです。処理スピードや安定性を考慮に入れれば、最近は、ディベロッパーやVBなどで作るCOMアドインやActiveX で、VBAは、単にその呼び出しだけに使われる傾向が強いようですが、そうすれば、ほぼ隠蔽は完成できるはずです。 >長い文字列なら解読に時間がかかるということは、 クラッキングという言葉どおり、パスワードの破壊で無効にしてしまうことであって、盗み出すわけではありません。総当り法のアンロックなら、コードが公開されていたりすることもあるようです。

kag
質問者

お礼

ありがとうございました。参考にさせて頂きます

  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

直接的な質問の回答にはなってませんが、、、 様々な文字を組み合わせて、長いパスを作れば解読に時間は掛るでしょうね。 コードを見せたくない理由は大きく別けると「恥ずかしい」か「マネされたくない」、コードを見たい側は「マネしたい」だと思います。 やっている事が想像出来る人は長時間かけてパス解除をしようとは思わないでしょうし、想像も付かないような人にはコードを見ても容易には理解出来ないと思いますけど、、、

kag
質問者

お礼

長い文字列なら解読に時間がかかるということは、文字列を造出し、アタックするパターンの解読方法なのですね。

関連するQ&A

  • VBAプロジェクトのパスワード解除について

    VBAプロジェクトのパスワードを解除した後VBAプロジェクトにあるモジュールを削除するというコードを書きました。 解除まではできていますが、モジュールを解除するコードにくると保護されているというエラーが出て進めません。 いくつかのことを確認しましたが、解決に至らなかったので、ご教示いただけないでしょうか。 確認した内容は以下のとおりです。 (1)パスワード解除後にブレークポイントを設定して、VBAプロジェクトを触ってみましたが、モジュールは展開されず、パスワードも要求されません。 (2)パスワード解除後プログラムを強制終了して、解除したエクセルをダブルクリックして開き、VBAプロジェクトを触ると、パスワードは解除されていて、モジュールも展開されました。 (3)パスワード解除とモジュール削除を別々のプロシージャにして、パスワード解除をしてプロシージャを終わらせて、改めてモジュール削除のプロシージャを実行してみましたが、VBAプロジェクトが保護されていますと出て、モジュール削除のコードが実行できない。 VBAで処理するのは不可能であるなら、PowerShellとの組み合わせなどでできるようになるのでしょうか? とりあえずは、xlsmをxlsxで保存し直すことでモジュールを削除するという目的は達成しておりますが、上記の方法でもやってみたいのでご教示お願いします。

  • VBAによるVBAプロジェクトパスワード入力

    エクセルの成果物を他人に渡したいのですが、マクロを使っているためモジュールを解放してから渡したいと考えています。 解放するエクセルが100個くらいあるため、別途モジュールを解放するプログラムをVBAで作りましたが、 対象とするエクセルのVBAプロジェクトにパスワードをかけていたため、解放することができません。 それぞれ立ち上げてパスワードを入力すればいいかもしれませんが、それをするならそのままモジュールを解放すればいいので、できればやりたくありません。 パスワードは分かっています。 VBAを使ってVBAプロジェクトのパスワードを入力する方法をご教示いただけないでしょうか? よろしくお願いします。

  • パスワード付のVBAプロジェクト

    サーバーからの出力データをベースにVBAを組んでいたら、勝手に.xlam という拡張子の付いたプロジェクトがひっついてきました。 こいつを削除したいのですが、パスワードがかけられて削除できません。 不要な部分なので削除したいのですが、上手く削除する方法はないですか? 最後の最後は新規ブックに一つずつコピー・・・は覚悟してるんですが、それも面倒なので。 それとも「実害はないので放置しても良い」ものなのでしょうか?

  • Excelを閉じるときVBAプロジェクトのパスワード要求が表示される

    VBAでコードを記述しプロジェクトにはパスワードをかけております。 マクロ有効にてシート上で作業をし、作業終了後にExcelを閉じるとVBAプロジェクトのパスワードを 要求する画面が表示されてしまいます。ちなみにバグ等でエラーが発生しているわけではありません。 幽霊プロジェクトの怪 http://hp.vector.co.jp/authors/VA016119/kitan01.html#11 PRB: Excel が終了した後、 VBA プロジェクトのパスワード プロンプトが表示されます。 http://support.microsoft.com/default.aspx?scid=kb;ja;280454 上記サイト様を参照しましたが、オブジェクト変数をPublicで使用したりはしてませんし、DBアクセスを している部分はあるもののPrivate変数を使用し念のためコードの最後でNothingをセットしています。 どなたか同様の現象をご存知の方、または解決したよ!という方いらっしゃいましたらご教授願います。

  • Excel VBAプロジェクトのロック

    OS:WindowsXP Office:2003 ExcelのVBAプロジェクトをパスワードによる保護を欠けたいのですが、 やり方を教えていただけないでしょうか? パスワードを入力しないと、ソースが見えなくなるようにすることが目的です。 よろしくお願いします。

  • VBAプロジェクトのロック解除が出来ない

    VBAのプロジェクトが勝手にロックされてしまい解除出来なくなってしまう件についての質問です。 症状としては、何か特定の作業を行ったという訳ではなくVBAプロジェクトのロックが掛かってしまい、内容が表示されなくなってしまうといったものです。 (私の場合は何度かこの症状になり、復活させたファイルでも違う状況で同様の症状が発生しました。) 他の質問掲示板等も拝見しましたが、多くの回答は「ロックされているんだから正しいパスワードを入れなければ解除できない」というものでした。 しかしこの質問者達の置かれている状況はおそらくこれとは違うものなのだろうと考えられます。 そのロックの解除パスワードを入力するはずの画面すら表示されないのです。 私も現在あるmdbがこの状態になってしまい困っています。 通常パスワードでのロックが掛かっている場合ではモジュールの画面でパスワードを入力するウィンドウが表示される場面で、「プロジェクトがロックされています。プロジェクトを表示できません。」というウィンドウが表れます。 一度キャンセルをして、[ツール] → [×××のプロパティ]でも同様です。 この状態は、何らかの原因でファイルが破損してしまった、という事なのでしょうか? またもしファイルの破損であるとした場合、どういった事が原因で発生する可能性があるのでしょうか? よろしくお願いいたします。

  • RARのパスワード解除ソフトを教えてください。

    データをバックアップするときにRARのパスワードをかけて保存していましたが、いざ解凍しようとしたらパスワードを忘れてしまい開けなくなりました。 総当り方式のパスワード解析ソフトを探してみましたが設定したパスワードが日本語だったため外国のソフトは一切使えず、日本産のpikazipは辞書検索を使うと日本語が扱えたのですが、WinRARのバージョンが3.7xなので対応していませんでした。 パスワードが3文字でひらがなというのを覚えていたのでひらがな3文字を全て組み合わせた辞書を作ったのですが辞書検索ができるソフトがpikazip以外見つかりませんでした。 日本語の辞書検索が可能な解析ソフト、もしくは日本語パスワード対応しているソフトはありませんでしょうか。

  • VBAで、シート保護のパスワードは利用可能ですか?

    VBAソース上で、シート保護で設定したパスワードを取得、使用することは可能でしょうか? ソースにパスワード文字列をベタ書きせずにすむなら、その方法をとりたいので教えてください。 例) 1.[Excelメニュー-シート保護]で、パスワードを設定 2.VBAで、以下のように「1.で設定したパスワード」を取得し、変数に代入 3.Protectメソッドでその変数を使用  VBAソース)  Dim pass As String  pass = 「1.で設定したパスワード」  ActiveSheet.Protect Password:=pass, UserInterfaceOnly:=True

  • エクセルのVBAのパスワードについて

    インターネットでパスワード管理のソフトを探していたとき、エクセルのVBAの解析ソフトのようなものが有料で売っていたのですが、そんなことができてしまうのでしょうか。会社で重要なマクロが入ったファイルを取引先とやり取りすることがあるのですが、中を見られると困るのでもし本当に解析が出来るとしたら、それをさせないようにする方法があるのでしょうか。

  • パスワードを解除されない方法について

    お世話になります。 会社の極秘ファイル(excel)にパスワードをつけようと思っています。 前提として、特別なソフトは使用できず、主に私が時々更新、数名が閲覧します。 質問1 世の中にはパスワードを解除する方法は事実多くあります。 OFFICE系製品で全パターン検査をして虱潰しに探すソフトは見つけました。 PDFのパスワードを「無効」にするソフトがあるのも知っています。 もしOFFICE製品のパスワードを「無効」にするソフトが無いのであれば、強力なパスワードを付ければよいかと思っているのですが、「MS-Office製品」と「ZIP」にも、パスワードを「無効」にするソフトがあるのでしょうか? ※「無効」とはどんなパスワードをつけても意味が無く無かったことにされ開けるようになることです。 ソフト紹介はしないで、存在するかしないかYES/NOでお応え頂けると助かります。 こんな有名サイトで悪用できるソフトを紹介するのは良くないですし、私は必要ありませんので。 質問2 また、どのようなパスワードやセキュリティで運用するのが良いでしょうか。 下記(1)(2)の他に現実的で良い方法はありますでしょうか? (1)某サイトで「大文字・小文字・数字・記号などで10文字以上にすると虱潰し作戦は現実的に不可能(解析にウン百年)」という情報あり (2)個人的に試しにpassとして2バイト文字を付けてみると「あ」でも解除できなかったので、日本語や漢字も混ぜると良い。 以上2点、宜しくお願い致します。

専門家に質問してみよう