• 締切済み

OPENSSLをC言語で

OPENSSLを使用して暗号化と復号化の処理をC言語(VC++)で 作りたいのですが、C言語からの関数の仕様書を見つけることが できません。一覧表は見つけたのですがこれでは機能がわからなくて 困っています。 また、例題としてコマンドラインからの例は、入手できたのですが これがCの関数になるとどのようになるのか解かりません。 関数仕様書を入手できるHPを教えてください。 (英語のサイトも探しましたが、挫折しました) こんな、馬鹿な質問で申し訳ありません。

みんなの回答

回答No.2

補足です。個々の関数のマニュアルは英語版の方にしかないみたいです。(_ _)

参考URL:
http://www.openssl.org/
回答No.1

英語の正式なサイトは次のところです。 http://www.openssl.org/ ここの Documents から ssl(3) をたどると、各ライブラリ関数の マニュアルが読めます。これの日本語版は以下にあります。 http://www.infoscience.co.jp/technical/openssl/ あと、簡単な解説文書が以下にあります。 http://stingray.sfc.keio.ac.jp/security/ssl/ssl.html 参考URLは日本語版サイトです。

参考URL:
http://www.infoscience.co.jp/technical/openssl/

関連するQ&A

  • openSSLのAES暗号化アルゴリズム関数仕様 (C言語開発)

    openSSLのAES暗号化アルゴリズムを使用して、暗号化と復号化の処理 をC言語で作成したいのですが、関数の仕様書を見つけることができません。 尚、openSSLの公式Pageにも載ってませんでした><; 関数仕様書を入手できるHP、或いは書籍(有料でも良いです)などございましたら、 ご教授の程、お願い致します。

  • OSXでC言語

    C言語を学んでる者です コマンドラインのプログラムに飽きてきました ウインドウなどボタンを使いたいんですが cocoaなどcarbonなどは使いたくありません 調べましたらtoolboxを呼び出してウインドウやマウス操作をするようなことが書かれていたんですがよくわかりません OSXでC言語のみでXcodeなど使わないで Windowsみたいにウインドウなどボタンを表示させる関数などライブラリなどあるのでしょうか? OSXだと情報が少な過ぎて困っています 誰か教えて下さいお願いします

  • OpenSSLでOPENSSL_Applinkが見つからない。

    WindowsXPでOpenSSL(ver 0.9.8.h)を使用したDLLを作成しています。 PEMファイルを読み込むためにPEM_read_RSA_PUBKEY、PEM_read_RSAPrivateKeyを使用したいのですが、PEM_readRSA_PUBKEY、PEM_read_RSAPrivateKey部分で、 OEPNSSL_Uplink(04847010,05):no OPENSSL_Applinkというエラーが出てしまいます。 通常プロジェクトですとうまくいくのですが、DLLにしてExcelVBAで動作させると上のエラーが発生してしまいます。 エラー箇所だと思われるソースコード(uplink.c)を見ると applink=(void**(*)())GetProcAddress(h,"OPENSSL_Applink"); if (applink==NULL) { apphandle=(HMODULE)-1; _tcscpy (msg+len,_T("no OPENSSL_Applink")); break; } の箇所でapplinkがNULLのためエラーになってしまっているようです。 作成したDLLをコマンド[dumpbin /EXPORTS 自作DLL]で見ると実行させたい関数と、OPENSSL_Applink関数が表示されます。 (序数ではなく、_OPENSSL_Applinkで表示されます。) 原因がわかる方いらっしゃいますでしょうか? よろしくお願い致します。 OS:WindowsXP OpenSSL:0.9.8.h Excel:2002

  • RSAのCプログラム

    何かC言語で書かれたRSAの一連の流れを示したものはありますか?Googleでプログラムを探しているのですがどうしてもみつかりません。プログラムとして、単純なものでよいです。ある平文に対して、はじめに2つの素数を見つけ(p,q)、鍵を生成し、暗号化をして、それを復号するというような一連の流れをC言語で見てみたいのでプログラムがありましたら教えてください。お願いします。

  • C言語で分からないところがあります。整数値の分割取得みたいなこと・・

    C言語で分からないところがあります。整数値の分割取得みたいなこと・・ で困っています。 僕はC言語初心者です。 コンパイラはVC2008です。 今回整数値を分割して取得したいと考えています。 例えば次のような整数値(int型)があったとします。 235465667 この整数値を3つにわけて取得したいのです。つまり 235 465 667 としたいのです。このような働きをしてくれる便利な関数はないのでしょうか? 調べてみたのですが、内容が内容だけに探しにくくて見つけられませんでした。 もし、関数がなければ、どのようにすれば取得できるかコードを教えてほしいです。 よろしくお願いします!

  • java C言語では[system(**)]

    c言語ではコマンドラインに指定の文字列を入れて実行させるには system(***); をつかいますが javaではどのように書くのでしょうか?・ ご教授お願いします。

  • c言語の記述で困っています。

    c言語の記述で困っています。 USBは、メッセージベースの通信バスであるため、PCとUSBデバイスが通信を行う際は、コマンドとデータをテキストまたはバイナリ形式で送受信しています。各USBデバイスには固有のコマンドセットがあります。USBデバイスからの応答を読み取るにはRead/Write関数を使用して、それらのコマンドを計測器に送る必要があると思いますが、具体的にreadやwriteでどのようにc言語で記述したらいいのかわかりません。分かりやすいサンプルやホームページ等ありましたら教えて下さい。よろしくお願いします。 ちなみに、私が使用しているUSBデバイスのコマンドはhexです。

  • c言語の変数一覧の取得

    c言語で書かれたコードについて、使われている変数名や関数名の一覧を取得することはできるのでしょうか? 何か方法がありましたら教えてください。

  • OpenSSLのPEMファイル入出力時の強制終了

    こんにちは。 現在WindowsXP環境にてOpenSSL(ver0.9.8.h)を使用したDLL(C言語)の作成を行っています。 そこでlibeay32.dll、libssl32.dllをsystem32に配置し、VC++を使用してDLL作成のプロジェクトでPEMファイルを読み込む関数を作成しました。 その関数の中で、PEM_write_RSA_PUBKEY、PEM_read_RSA_PUBKEY等を実行すると異常終了してしまいます。(エラーが表示されず、強制終了します。) そこで通常のプロジェクトで同じように作成し、実行しても駄目でした。 ですが、ファイル出力ではなく、stdout(コンソール)だとうまくいくのでよくわかりません。 どなたか原因のわかる方はいらっしゃいますでしょうか? OS:WindowsXP OpenSSL:0.9.8.h

  • C言語 main関数とsum関数の記述順について

    はじめまして。 【苦しんで覚えるC言語】(Web版)でC言語を学んでいる初学者です。 【第1部:C言語基礎編】>【関数の作り方】>【自作関数を作る】の部分(http://9cguide.appspot.com/11-01.html#S2)でつまづいています。 下記のような、1から100までの数字の合計を表示するプログラムが例題として取り上げられています。 しかし、ここが理解できないので、次の【プロトタイプ宣言】に進めずにいます。 例題1  sum関数をmain関数の後に記述した場合(プログラムが実行されない)。 #include <stdio.h> int main(void) { return 0; } int sum(void) { printf("%d\n",(1 + 100) * 100 / 2); return 0; } 例題2  sum関数をmain関数の先に記述した場合(プログラムが実行される)。 #include <stdio.h> int sum(void) { printf("%d\n",(1 + 100) * 100 / 2); return 0; } int main(void) { return 0; } 例題1の場合、【まずmain関数を作り、次にsum関数を作りました。この場合、main関数を解析している段階では、sum関数は発見されておらず、従って、main関数の中では、sum関数を使うことは出来なくなってしまいます。】との説明がありますが理解できません。 コンパイラがどのような順番でプログラムを処理しているか理解できていないので分からないのだと思います。 例題1の場合と例題2の場合の両方について、コンパイラがどのような順番でプログラムを処理しているのかを具体的に教えてください。 どうかよろしくお願い致します。