一以上の計算機に接続される署名サーバであって、前記署名サーバは、前記計算機に接続される一以上のインタフェースと、前記インタフェースに接続されるプロセッサと、前記プロセッサに接続されるメモリと、を備え、前記署名サーバは、署名依頼先の署名者を特定する署名者特定部と、前記特定された署名者が前記署名サーバの利用を許可されている内部ユーザであるか否かを判定するユーザ判定部と、前記署名者が内部ユーザであると判定された場合、前記署名者が使用する計算機に対して前記署名サーバを利用した署名実施を依頼し、前記署名者が内部ユーザではないと判定された場合、前記署名者が使用する計算機に対して前記署名サーバの利用要否を問い合わせるユーザ連携部と、前記署名サーバの利用要否の問い合わせに対して、前記署名サーバを利用するとの応答があった場合、署名者の署名環境を取得し、前記取得した署名環境が適正ではないと判定すると、前記取得した署名環境を適正化する署名環境判定部と、を備え、前記ユーザ連携部は、前記署名環境判定部によって前記署名者の署名環境が適正であると判定された場合、または、前記署名環境の適正化が行われた場合には、前記署名サーバを利用した署名実施を依頼し、前記ユーザ連携部は、前記署名サーバの利用要否の問い合わせに対して、署名者側で署名を実施するとの応答があった場合、前記署名者が使用する計算機に署名者側での署名実施を依頼する、ことを特徴とする署名サーバ。前記署名環境判定部は、前記署名環境の適正化処理として、署名者が署名に使う証明書を適正な証明書にさせるか、または、署名処理のためのプログラムを署名者が使用する計算機に送信する処理を行う、ことを特徴とする請求項1に記載の署名サーバ。前記ユーザ連携部は、前記署名サーバの利用要否の問い合わせに対して、署名者側で署名を実施するとの応答があった場合、署名の条件を示す署名条件情報、署名の依頼内容を示す署名依頼情報、および、署名対象の文書を、署名者が使用する計算機に対して送信する、ことを特徴とする請求項1に記載の署名サーバ。前記署名サーバは、署名者が実施した署名が署名条件を満たすか否かを検証する署名検証部をさらに備える、ことを特徴とする請求項1に記載の署名サーバ。前記ユーザ連携部は、署名依頼先の署名者が複数存在する場合、署名の条件を示す署名条件情報に基づいて、全ての署名者が署名を実施したか否かを判定し、署名を実施していない署名者がいると判定すると、次の署名者に署名実施を依頼する、ことを特徴とする請求項1に記載の署名サーバ。前記ユーザ連携部は、前記署名者が使用する計算機に、署名標準に基づいた署名実施を依頼する、ことを特徴とする請求項1に記載の署名サーバ。前記ユーザ連携部は、前記署名者が使用する計算機から署名の代行要求を受け付けると、前記代行要求に基づいて、署名の条件を示す署名条件情報、および、署名の依頼内容を示す署名依頼情報を更新して、代行者が使用する計算機に署名実施を依頼する、ことを特徴とする請求項1に記載の署名サーバ。一以上の計算機と、第1署名サーバと、前記第1署名サーバとは別のサーバである外部サーバと、前記一以上の計算機の少なくとも一つ、前記署名サーバ、および前記外部サーバ間に接続されるネットワークと、を備える署名システムであって、前記第1署名サーバは、前記計算機に接続される一以上のインタフェースと、前記インタフェースに接続されるプロセッサと、前記プロセッサに接続されるメモリと、を備え、前記第1署名サーバは、署名依頼先の署名者を特定する署名者特定部と、前記特定された署名者が前記第1署名サーバの利用を許可されている内部ユーザであるか否かを判定するユーザ判定部と、前記署名者が内部ユーザであると判定された場合、前記署名者が使用する計算機に対して前記第1署名サーバを利用した署名実施を依頼し、前記署名者が内部ユーザではないと判定された場合、前記署名者が使用する計算機に対して前記第1署名サーバの利用要否を問い合わせるユーザ連携部と、前記第1署名サーバの利用要否の問い合わせに対して、前記第1署名サーバを利用するとの応答があった場合、署名者の署名環境を取得し、前記取得した署名環境が適正ではないと判定すると、前記取得した署名環境を適正化する署名環境判定部と、署名の条件を示す署名条件情報に基づいて、前記外部サーバから必要な情報を取得する外部サーバ連携部と、を備え、前記ユーザ連携部は、前記署名環境判定部によって前記署名者の署名環境が適正であると判定された場合、または、前記署名環境の適正化が行われた場合には、前記第1署名サーバを利用した署名実施を依頼し、前記ユーザ連携部は、前記第1署名サーバの利用要否の問い合わせに対して、署名者側で署名を実施するとの応答があった場合、前記署名者が使用する計算機に署名者側での署名実施を依頼する、ことを特徴とする署名システム。前記署名システムはさらに、前記第1署名サーバとは別の第2署名サーバを備え、前記第1署名サーバは、前記第1署名サーバの利用要否の問い合わせに対して、前記第2署名サーバを利用した署名を実施するとの応答があった場合に、署名の条件を示す署名条件情報、署名の依頼内容を示す署名依頼情報、および、署名対象の文書を、前記第2署名サーバに送信する、ことを特徴とする請求項8に記載の署名システム。一以上の計算機に接続される署名サーバを利用した署名処理方法であって、前記署名サーバは、前記計算機に接続される一以上のインタフェースと、前記インタフェースに接続されるプロセッサと、前記プロセッサに接続されるメモリと、を備え、前記署名処理方法は、前記署名サーバが署名依頼対象の署名者を特定するステップと、前記署名サーバが、前記特定した署名者が前記署名サーバの利用を許可されている内部ユーザであるか否かを判定するステップと、前記署名者が内部ユーザであると判定した場合、前記署名サーバが、前記署名者が使用する計算機に対して前記署名サーバを利用した署名実施を依頼するステップと、前記署名者が内部ユーザではないと判定した場合、前記署名サーバが、前記署名者が使用する計算機に対して前記署名サーバの利用要否を問い合わせるステップと、前記署名サーバの利用要否の問い合わせに対して、前記署名サーバを利用するとの応答があった場合、前記署名サーバが署名者の署名環境を取得し、前記取得した署名環境が適正ではないと判定すると、取得した署名環境を適正化するステップと、前記署名者の署名環境が適正であると判定された場合、または、前記署名環境の適正化が行われた場合には、前記署名サーバが、前記署名サーバを利用した署名実施を依頼するステップと、前記署名サーバの利用要否の問い合わせに対して、署名者側で署名を実施するとの応答があった場合、前記署名サーバが、前記署名者が使用する計算機に対して署名者側での署名実施を依頼するステップと、を含むことを特徴とする署名処理方法。前記署名環境を適正化するステップでは、署名者が署名に使う証明書を適正な証明書にさせるか、または、署名処理のためのプログラムを署名者が使用する計算機に送信する、ことを特徴とする請求項10に記載の署名処理方法。前記署名者側での署名実施を依頼するステップでは、署名の条件を示す署名条件情報、署名の依頼内容を示す署名依頼情報、および、署名対象の文書を、署名者が使用する計算機に対して送信する、ことを特徴とする請求項10に記載の署名処理方法。前記署名処理方法は、前記署名サーバが、署名者が行った署名が署名条件を満たすか否かを検証するステップをさらに含む、ことを特徴とする請求項10に記載の署名処理方法。前記署名処理方法は、署名依頼対象の署名者が複数存在する場合、前記署名サーバが署名の条件を示す署名条件情報に基づいて全ての署名者が署名を実施したか否かを判定し、署名を実施していない署名者がいると判定すると、次の署名者に署名実施を依頼するステップをさらに含む、ことを特徴とする請求項10に記載の署名処理方法。前記署名者が使用する計算機に対して署名実施を依頼するステップでは、署名標準に基づいた署名実施を依頼する、ことを特徴とする請求項10に記載の署名処理方法。前記署名処理方法は、前記署名サーバが、前記署名者が使用する計算機から署名の代行要求を受け付けると、前記代行要求に基づいて、署名の条件を示す署名条件情報、および、署名の依頼内容を示す署名依頼情報を更新して、代行者が使用する計算機に対して署名実施を依頼するステップをさらに含む、ことを特徴とする請求項10に記載の署名処理方法。前記署名処理方法は、前記署名サーバが、署名の条件を示す署名条件情報に基づいて、外部サーバから必要な情報を取得するステップをさらに含む、ことを特徴とする請求項10に記載の署名処理方法。前記署名処理方法は、前記署名サーバの利用要否の問い合わせに対して、前記署名サーバとは別の署名サーバを利用した署名を実施するとの応答があった場合、前記署名サーバが、署名の条件を示す署名条件情報、署名の依頼内容を示す署名依頼情報、および、署名対象の文書を、前記別の署名サーバに送信するステップをさらに含む、ことを特徴とする請求項10に記載の署名処理方法。上記の公知技術では、全ての署名者が同一の署名サーバ上で署名を行う必要がある。しかしながら、必ずしも全ての署名者が同じ署名サーバを使うケースばかりとは限らない。例えば、署名者が別の署名環境を使う場合自社で集中管理する署名サーバを使う場合や、クライアントマシン側の署名ソフトを使う場合なども考えられ、上記公知技術では、そのような場合に署名依頼を行うことができないという問題がある。特に異なる企業のユーザ間で署名の依頼、作成を行う場合は、企業によって使用する署名環境も異なると考えられる。例えば、一方のユーザは、ホスティングサービスの署名サーバを使用し、他方のユーザは、自社の署名サーバを使用して署名する等の状況が多数生じると考えられる。上記のような署名環境の異なるユーザ間で署名の依頼作成を行う状況でも署名依頼者が指定する条件で署名者に署名させるには、実施された署名が署名依頼者の指定した条件に合致するか検証する仕組みが別途必要である。また、上記公知技術では、署名者の署名環境例えば、署名依頼者により指定された証明書を持っているか、また、そもそも署名機能を持っているか等までは考慮しておらず、署名者が署名環境を持ってない場合の処理については示されていない。本発明は、上述した問題に鑑みてなされたものであり、署名者の署名環境を判別し、署名者の署名環境が様々である場合でも、署名依頼者が意図した署名条件で署名者に署名させることが可能な署名システムを提供することを目的とする。本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、一以上の計算機に接続される署名サーバであって、前記署名サーバは、前記計算機に接続される一以上のインタフェースと、前記インタフェースに接続されるプロセッサと、前記プロセッサに接続されるメモリと、を備え、前記署名サーバは、署名依頼先の署名者を特定する署名者特定部と、前記特定された署名者が前記署名サーバの利用を許可されている内部ユーザであるか否かを判定するユーザ判定部と、前記署名者が内部ユーザであると判定された場合、前記署名者が使用する計算機に対して前記署名サーバを利用した署名実施を依頼し、前記署名者が内部ユーザではないと判定された場合、前記署名者が使用する計算機に対して前記署名サーバの利用要否を問い合わせるユーザ連携部と、前記署名サーバの利用要否の問い合わせに対して、前記署名サーバを利用するとの応答があった場合、署名者の署名環境を取得し、前記取得した署名環境が適正ではないと判定すると、前記取得した署名環境を適正化する署名環境判定部と、を備え、前記ユーザ連携部は、前記署名環境判定部によって前記署名者の署名環境が適正であると判定された場合、または、前記署名環境の適正化が行われた場合には、前記署名サーバを利用した署名実施を依頼し、前記ユーザ連携部は、前記署名サーバの利用要否の問い合わせに対して、署名者側で署名を実施するとの応答があった場合、前記署名者が使用する計算機に署名者側での署名実施を依頼する、ことを特徴とする。本発明の代表的な実施の形態によれば、署名者の署名環境が様々である場合でも、署名依頼者が意図した署名条件で署名者に署名させることができる。以下、本発明の実施の形態について説明する。尚、以下に説明する実施の形態は一例であって、本発明はこれに限定されるものではない。<第1の実施形態>図1は、本発明の第1の実施形態における署名システムのハードウェアおよびソフトウェア構成を示すブロック図である。第1の実施形態における署名システムは、1以上の署名サーバ101a及び101b以下、これらを総称して署名サーバ101とも記載すると、1以上の自社署名サーバ128と、1以上のOCSPサーバ117と、1以上のタイムスタンプサーバ118と、署名機能を持たない1以上のクライアント端末119a及び119b以下、これらを総称してクライアント端末119とも記載すると、署名機能を備える1以上のクライアント端末120と、を備える。自社署名サーバ128は、同じ組織内のクライアント端末119bからアクセス可能である。署名サーバ101、クライアント端末120、自社署名サーバ128は、それぞれI/F104、123、131を介してネットワークに接続される。署名サーバ101は、I/F104を介して、クライアント端末119等の外部機器に対して、操作要求の受付けや操作の指示を行う。署名サーバ101は、メモリ102、CPU103、およびI/F104を備える。CPU103は、I/F104を介して、クライアント端末119等の外部機器からの操作要求の受信および当該操作の実行や、外部機器に対して署名依頼の通知や操作結果の送信などを行う。メモリ102は、アカウント管理プログラム105、署名生成プログラム106、署名検証プログラム107、署名条件管理プログラム108、ユーザ連携プログラム109、署名環境判定プログラム110、外部サーバ連携プログラム111、アカウント情報112、署名依頼情報113、署名条件情報114、外部サーバ情報115、署名文書情報116を備え、CPU103およびI/F104と接続されている。クライアント端末120は、CPU122、メモリ121およびI/F123を備える。CPU122は、I/F123を介して、署名サーバ101等への操作要求や、署名サーバ101等からの操作指示の受付を行う。メモリ121は、署名生成プログラム124、署名検証プログラム125、外部サーバ連携プログラム126を備え、CPU122およびI/F123と接続されている。自社署名サーバ128は、メモリ129、CPU130、およびI/F131を備え、クライアント端末119bと接続されている。メモリ129は、署名生成プログラム132、署名検証プログラム133、外部サーバ連携プログラム134を備え、CPU130、およびI/F131と接続されている。CPU130は、I/F131を介して、署名サーバ101やクライアント端末119b等と通信を行う。次に、本実施形態における署名システムのソフトウェア構成の詳細について説明する。最初に、署名サーバ101のメモリ102に格納されているプログラム以外の情報について説明し、その後、メモリ102に格納されているプログラム情報について説明する。アカウント情報112は、署名サーバ101を使用するユーザを認証するために使用する情報である。図2は、第1の実施形態におけるアカウント情報112の一例を示す図である。アカウント情報112には、項目201、202、203、204の四つのデータ項目が含まれる。項目201は、ユーザを一意に識別するためのユーザIDを示す。項目202は、署名サーバにログインする際に必要なパスワードを示す。項目203は、ユーザのメールアドレスの情報を示す。項目204は、署名サーバを使うためのアカウントの発行ライセンスがユーザにあるか否かを示す。例えば図2において、userAはライセンス数が10であるので、10個のアカウントを発行する権限があることを示す。例えば、自分以外のユーザにも署名サーバを利用させたい場合に、当該ユーザに対して署名サーバのアカウントを発行する等ができる。図2において、userBはライセンス数が0であり、アカウントを発行することはできない。署名依頼情報113は、署名依頼者が署名者に署名依頼するにあたり、誰にどんな条件で何に署名させるかを示す情報である。図3は、第1の実施形態における署名依頼情報113の一例を示す図である。署名依頼情報113には、項目301、302、303、304、305、306の六つのデータ項目が含まれる。項目301は、署名依頼者が行なっている署名依頼を識別するための依頼番号を示す。項目302は、署名依頼を行っている依頼者の情報を示す。項目303は、当該署名依頼によって署名させたいユーザ署名者を示す。項目304は、どのような条件で署名者に署名させるかの署名条件の情報を示す。本項目は、後述する署名条件情報114を参照する。項目305は、当該署名依頼において署名して貰いたい文書を示す。項目306は、当該署名依頼の進捗状況を示す。例えば図3において、依頼番号1のステータスは済であり、依頼した署名者による署名が完了していることを示す。依頼番号2のステータスは未済1/2であり、依頼した署名者2人のうち1人目の署名までが終わっていることを示す。署名条件情報114は、署名依頼者が署名者に署名依頼する際の署名の条件例えば署名の期限などを示す情報であり、署名依頼者が署名依頼する前に設定する。図4は、署名条件情報114の一例を示す図である。図4aは、第1の実施形態における署名条件情報114の一例を示し、図4bは、後述する第2の実施形態における署名条件情報114の一例を示す。署名条件情報114は、1以上の署名条件304で構成される。署名条件304には、項目401、402、403、404、405、406、407の7つのデータ項目が含まれる。項目401は、署名者の署名理由を示す。例えば、文書を署名者に確認させたいという意図で署名を求める場合には確認を設定し、文書を署名者に承認させたいという意図で署名を求める場合には承認を設定する。また、確認と承認の両方を設定して署名者にどちらかを選ばせるようにしてもよいし、ユーザに自由に指定させるようにしてもよい。項目402は、署名させたい署名者の情報を示す。図4に示す例では、署名者のメールアドレスを指定しているが、例えば署名サーバのアカウントIDなど、署名者を特定できるその他の情報でもよい。項目403は、署名の期限を示す。例えば、設定された期限までに署名が行われなかった場合に、署名サーバは署名依頼者に対してアラートを出す等してもよい。項目404は、文書内において署名データを入れるフィールドの情報であり、文書のどの部分に署名させるかを示す。署名フィールドについて図6を用いて説明する。例えば、上述した項目404でフィールド1が設定されていた場合、署名者は、図6の署名フィールド601の部分に署名し、フィールド2が設定されていた場合には、署名フィールド602の部分に署名する。項目405は、依頼する署名において、署名者が署名を実施する際に使用可能な証明書のタイプを示す。例えば、図4に示す例では、証明書タイプはsampleCAであり、署名者は、sampleCA、またはその下位の中間CAの発行する証明書であれば、署名に使っていいことを示す。項目406は、文書への署名において、証明書の有効無効の検証情報も文書に含める必要があるか否かを示す。例えば、本項目が要であれば、署名者またはその他のユーザが、署名に使われた証明書の有効性検証結果も文書に含める。項目407は、文書への署名において、さらにタイムスタンプも文書に含める必要があるか否かを示す。なお、署名条件情報114に、上記401~407の項目以外の署名条件に関する情報を含めるようにしてもよい。外部サーバ情報115は、署名サーバ101が連携する外部のサーバのアドレスを示す情報である。図7は、本発明の第1の実施形態における外部サーバ情報115の一例を示す図である。外部サーバ情報115には、項目701、702、703の三つのデータ項目が含まれる。項目701は、証明書の有効性確認に使用するOCSPサーバのアドレス情報である。項目702は、タイムスタンプサーバ118のアドレス情報である。項目703は、その他の署名サーバのアドレス情報である。署名依頼者が署名サーバ101aを使用する場合、その他の署名サーバとは、例えば、署名サーバ101bである。また、その他の署名サーバの例として、電子実験ノートシステムに用いられるサーバが挙げられる。なお、上記以外のサーバ情報があってもいいし、同種類のサーバの情報が複数登録されていてもいい。また、サーバのアドレス情報をURL等で指定してもいい。署名文書情報116は、署名対象とする文書である。署名文書情報116は、署名依頼者等が署名依頼を行う前に、署名サーバ101にアップロードする等して登録する。なお、署名依頼によって署名された文書や、署名途中の文書を保存するようにしてもよい。次に、署名サーバ101のメモリ102に格納されているプログラム情報について説明する。アカウント管理プログラム105は、アカウント情報112に基づいて、署名サーバ101を使用するユーザを認証し、ユーザが要求する操作の実行を許可、または禁止する等の処理を実行するためのプログラムである。署名生成プログラム106は、文書への署名を行うためのプログラムである。署名処理としては、例えば文書のハッシュ値を生成し、そのハッシュ値を署名者の秘密鍵で暗号化し、この暗号化した値を署名値として文書に付加する。なお、文書のハッシュ値を署名者が使用するクライアント端末に送り、署名者側で当該ハッシュ値をもとに署名値を作成し、署名サーバは、署名者から当該署名値を貰って文書に付加するなど、上記以外の処理でもよい。署名検証プログラム107は、署名者が実施した署名が適正か否かの検証を行うためのプログラムである。具体的には、署名値が正しいか否か、実施された署名が署名依頼条件を満たしているか等を検証する。署名条件管理プログラム108は、署名依頼者等の要求に基づき、署名依頼情報113や署名条件情報114の作成、変更、削除等を行うためのプログラムである。署名依頼者は、本プログラムを用いて署名に関する条件を設定し、署名者に署名を依頼することができる。例えば署名依頼者は、本プログラムを用いて署名の依頼内容や条件を設定し、設定した署名依頼の実施要求を署名サーバ101に対して出す。署名サーバ101は、設定した署名依頼で指定された署名者に対して、署名の依頼通知を行う。ユーザ連携プログラム109は、署名依頼者が設定した署名依頼情報に基づき、署名者への署名依頼通知や署名結果の送信、署名者側で実施した署名の受信等を行うためのプログラムである。例えば、図3の依頼番号1の署名依頼の場合、ユーザ連携プログラム109は、testtestcomのユーザに対して署名依頼通知を出す。署名環境判定プログラム110は、署名者から受信した署名方法に関する応答結果に基づいて、署名者の署名環境の取得判別を行うためのプログラムである。署名環境判定プログラム110は、また、署名者の署名環境が署名依頼者の指定する条件に合致するか検証し、合致しない場合は、署名者の署名環境を適正化する等の処理を行うためのプログラムでもある。外部サーバ連携プログラム111は、外部のサーバ、例えば他の署名サーバ101bやOCSPサーバ117、タイムスタンプサーバ118と連携し、外部の署名サーバへの署名依頼や、OCSP結果やタイムスタンプの取得を行う。次に、クライアント端末120のメモリ121に格納されている情報、および、自社署名サーバ128のメモリ129に格納されている情報について説明する。署名生成プログラム124、132は、署名生成プログラム106と同様に、文書への署名を行うためのプログラムである。署名検証プログラム125、133は、署名者が作成した署名が適正か否かの検証を行うためのプログラムである。外部サーバ連携プログラム126、134は、外部のサーバ、例えばOCSPサーバ117等へアクセスして、操作要求、操作結果の受信等を行うためのプログラムである。なお、メモリ121、129は、上記以外の情報、例えばメモリ102に格納されている情報などを含んでもよい。なお、図1において、クライアント端末A119a、クライアント端末B120、クライアント端末C119bは、それぞれ異なる組織組織A、組織B、組織Cに属している。例えば、組織Aは、医療機関であり、組織Bは製薬会社である。また、組織A、組織B、組織Cは、それぞれ異なる企業同士である。ただし、これらのクライアント端末が全てまたは一部同じ組織内にあってもよく、また、同じ組織内に異なる署名環境があってもよい。以上が本実施形態における署名システムのハードウェアおよびソフトウェア構成である。次に、上述したハードウェアおよびソフトウェア構成に基づいて、本実施形態における署名者への署名依頼、署名環境の判別、署名の実施および検証までの一連の処理の詳細について説明する。なお、署名依頼処理において、署名依頼情報113と署名条件情報114は、署名依頼者によって署名条件管理プログラム108を用いて事前に設定されている。署名サーバ101は、署名依頼者からの署名依頼の実施要求例えば、図3において依頼番号1の実施要求を受けて、署名者に対して署名依頼を行う。処理の詳細を以下で説明する。図8は、本発明の第1の実施形態における署名サーバ101が実行する、署名依頼、署名環境の判別、署名の実施および検証についての処理の一例を示すフローチャートである。署名依頼者からの署名依頼の実施要求を受け、アカウント管理プログラム105は、当該依頼内容を見て、署名者が署名サーバ101に登録されている内部ユーザか、未登録のユーザ以下、外部のユーザとも呼ぶか判断する。署名サーバ101に登録されている内部ユーザとは、署名サーバ101の利用を許可されているユーザのことである。アカウント管理プログラム105は、署名依頼情報113の項目303の内容に基づいて署名者を判別し、次にアカウント情報112の項目201や203の内容に基づいて、当該署名者が外部ユーザであるか判断するS801。当該署名者が署名サーバ101に登録されている内部ユーザであると判定すると、ユーザ連携プログラム109は、署名者に対して、署名依頼があることをメール等で通知し、署名依頼に対応する署名を署名サーバ101上で実施するよう要求するS802、S808。続いて、署名者からの指示に基づいて、署名生成プログラム106および署名検証プログラム107は、署名の実施、検証を行うS809。具体的には、署名依頼情報で指定された署名条件304の各項目401~407を満たすように、署名を実施するとともに、署名の検証を行う。署名の実施については、例えば項目406が要の場合は、署名文書に証明書検証結果も付加し、項目407が要の場合は、署名文書にタイムスタンプも付加する。なお、署名サーバ101側で署名させる場合、署名サーバ101の処理を制御して、署名依頼で指定された条件でしか署名できなくする例えば、署名理由であれば、項目401で指定したものしかユーザには選択できなくするなどことも可能である。その場合、署名文書について署名条件304の全ての項目を検証するのではなく、サーバ側だけでは制御できない部分例えば署名期限は守られたか、指定の証明書は使われたかの検証のみ行うようにしてもよい。署名検証プログラム107による署名の検証によって、署名が正しく行われたと判定すると、署名条件管理プログラム108は、署名依頼情報113のステータス306を更新し、依頼された署名が終了したことを署名サーバ101上やメール等で署名依頼者に対して通知し、処理を終了するS810、S812、S813。なお、署名された文書は、署名サーバ101上で保存して署名依頼者等に閲覧可能にしてもよいし、署名依頼者にメール等で直接送信してもよい。一方、ステップS810において、署名が正しく行われなかったと判定すると、署名者に対して再度署名し直して貰うよう通知してもよいし、例えば署名期限を過ぎた場合や、署名者から署名拒否の要求があった場合などは、署名依頼者に対して署名サーバ101上やメール等でアラートを通知する。署名条件管理プログラム108は、署名依頼者からの指示に基づいて、署名依頼の継続、内容変更、中止などの処理を実施し、処理を終了するS811。なお、上記においても、ステータス306を更新アラート状態などしてもよい。ステップS802において、署名者が外部ユーザであると判定すると、ユーザ連携プログラム109は、署名者に対して署名依頼があることをメール等で通知し、署名依頼に対応する署名を署名サーバ101上で実施するか、または、署名者側で実施するか問い合わせるS803。署名者側で署名を行う例としては、署名者側が有する署名ソフトを用いた署名や、署名サーバ101とは異なる署名サーバを利用した署名等である。なお、署名サーバ101は、署名者からの応答をメール等で受付けてもよいし、署名サーバ101の一時アカウントを発行して、署名サーバ101上で応答させるなどしてもよい。署名者から、署名サーバ101上で署名するという応答があった場合、署名環境判定プログラム110は、署名者の署名環境を判別するために署名者が使用しているクライアント端末119にアクセスし、署名環境に関する情報を取得するS804、S805。署名サーバ101上で署名するという応答があった場合とは、例えば、署名者が署名サーバ101の一時アカウントを使って署名サーバにログインし、署名依頼に対して署名サーバ101上で署名する選択を行った場合である。例えば、署名サーバ101は、ユーザがアクセスする署名サーバのWebページなどhtmlファイルなどに、ユーザの署名環境取得のための管理プログラム例えば、ActiveX登録商標やJAVA登録商標アプレット等を埋め込んでおき、ユーザによる署名サーバ利用要求応答時例えば、当該Webページの専用ボタン押下時などに、当該管理プログラムをユーザのクライアント端末にダウンロードさせる。クライアント端末は、管理プログラムをクライアント端末上で実行し、ユーザの署名の証明書例えば、クライアント端末に接続されたUSBやICカード等の媒体に格納されている証明書や、クライアント端末内に格納されている証明書にアクセスし、取得した情報を署名サーバ101に送信する。一例としては、署名サーバ101は、クライアント端末に接続されたUSBやICカード等に対して、証明書取得や署名作成の要求を行う場合、管理プログラムを介して、PKCS11等の標準的なICカードアクセスインタフェースに準拠したコマンドを使う等してアクセス可能である。クライアント端末内の証明書の場合は、ブラウザの証明書ストアにアクセスする等によって取得可能である。署名環境判定プログラム110は、上述した方法で取得した署名者の署名環境を検証し、署名環境が適正であるか否か判断するS806。検証方法としては、取得した証明書の期限は有効か、当該証明書は当該署名依頼における署名条件情報114の項目405で指定されたタイプの証明書かなどを検証する。それ以外の検証、例えば証明書に記載された所有者メールアドレスが項目402で指定されたメールアドレスと一致するかや、サンプルデータに署名して貰う等までの検証を行ってもよい。署名環境判定プログラム110は、署名者の署名環境が適正であると判定すると、署名者に対して、署名サーバ101を使うためのアカウントを発行して、当該アカウントで署名を行うように依頼し、ステップS809へ進むS807、S808。なお、アカウント発行については、任意に発行を許可するのでなく、署名依頼者にライセンス204がある場合にのみ発行を許可するなどの制御をしてもよい。一方、署名者の署名環境が適正ではない場合もある。例えば、署名者の証明書を格納するUSB等の媒体が、管理プログラムからのアクセスのためのインタフェースPKCS11等に対応してない場合など媒体に所定のコマンドを送っても正しい応答が帰ってこないなど、署名者の署名環境を取得できない場合もある。その場合、ステップS806において、署名環境判定プログラム110は、署名者の署名環境は適正でないと判定する。ステップS806において、署名者の署名環境が適正ではないと判定すると、署名環境判定プログラム110は、署名者の署名環境を適正化するS814。例えば、証明書の有効期限切れや、証明書タイプ405の不適合などのように、証明書に問題がある場合には、署名者に対して、証明書を更新してから再度、署名サーバ101にアクセスして処理を行うよう通知して待機する。また、署名サーバ101の外部サーバ連携プログラム111が、署名条件情報114の項目405で指定された証明書発行機関に対して、当該署名者の証明書の発行要求を行い、署名者に証明書発行機関にアクセスさせて証明書をダウンロードさせるようにしてもよいし、当該証明書が記録された媒体を署名者に送付するようにしてもよい。一方、証明書の問題でなく、署名者の証明書を格納する媒体にアクセスできない等の理由により、署名環境を取得できない問題の場合、署名環境判定プログラム110は、例えば署名者の許可があった場合は、署名処理のためのプログラムソフトウェアトークンを署名者のクライアント端末に送信し、署名者に対して当該ソフトウェアトークンを使って署名するように依頼するS814。なお、署名環境を取得できない場合に、署名者の署名環境を適正化できないと判定するようにしてもよい。署名環境が適正化された場合には、ステップS807に進むS815。一方、署名環境が適正化できない場合、環境判定プログラム110は、署名者や署名依頼者にエラー通知を出し、ステータス306を更新例えばエラー状態などして、ステップS811に進むS816。ステップS804において、署名者が署名サーバ上で署名しないという応答の場合、ユーザ連携プログラム109は、署名者側で署名するように、署名者に依頼するS817。署名者側での署名とは、例えば、署名者側の署名ソフトを用いての署名や、署名者側の独自の署名サーバを用いての署名である。なお、署名者に署名を依頼する場合、署名対象の文書と署名条件情報114をメール等で署名者に送信してもよいし、署名サーバ101の一時アカウントを発行して、署名サーバ101から署名に必要な情報をダウンロードさせる等してもよい。また、署名条件情報114のうち、ユーザの選択の余地がないもの、例えば署名理由において確認のみ許可されている場合などは、文書に事前にこの情報を埋込んでから署名者に送ってもよい。ユーザ連携プログラム109は、署名者が実施した署名文書を受取り、署名検証プログラム107で検証するS818。具体的には、署名依頼情報113で指定された署名条件304の各項目401~407を満たすように署名されたか否かを検証する。署名サーバ101を使用せずに署名者側で署名させる場合、署名サーバ101側で署名処理を制御することができないので、全ての項目を検証する必要がある。具体的には、受信した署名文書を見て、署名理由、署名者が項目401、402と合致するか、署名期限は守られているか、項目404で指定した署名フィールドに署名されているか、署名に使用された証明書のタイプは項目405に合致するか、証明書検証情報やタイムスタンプは指定された署名条件通りに署名文書に付加されている/付加されていないか、などを検証する。検証の結果、受信した署名文書が適正であると判定するとステップS812に進むS819。一方、受信した署名文書が不適正であると判定すると、当該不適正が既定回数例えば、3回以下であるか否かを判定しS820、規定回数以下であると判定すると、ステップS817に戻って、署名者に署名し直しを要求する。一方、不適正の回数が規定回数を超えたと判定すると、署名者や署名依頼者にエラー通知を出して、ステータスを更新し、ステップS811に進むS821。なお、ステップS819において、署名条件情報の証明書検証情報が要であるにも関わらず、署名文書に証明書検証情報が付加されていなかった場合には、署名文書が不適正であると判定してもよい。ただし、外部サーバ連携プログラム111が当該署名に使用された証明書の有効性をOCSPサーバ117に問合わせて検証し、証明書が有効であれば、検証結果を署名文書に付加して終了署名文書は適正であると判定するしてもよい。ただし、証明書が無効であった場合や、署名者が署名を実施してから外部サーバ連携プログラム111が証明書の有効性を検証するまでの間に証明書が失効した場合などでは、署名サーバ101は、再度署名者に対して署名し直して貰うよう通知する。なお、ステップS817において、署名者側で署名を実施する場合、署名者のクライアント端末で署名する以外に、自社の署名サーバや、署名サーバ101とは異なるプロバイダの署名サーバを使って署名するなどしてもよい。その場合、上記と同様の処理方法でもよいし、以下のような処理を行ってもよい。以下、上記とは処理が異なる部分ステップS817についてのみ説明する。署名者から、署名サーバ101ではなく、署名者が指定例えばURLで指定等する別の署名サーバで署名するとの応答を得た場合の処理について説明する。署名サーバ101は、別の署名サーバに対して、誰がどんな条件で署名する必要があるか等の情報を含む署名依頼の通知を出す。具体的には、署名サーバ101は、署名対象の文書とともに、当該署名者に関する署名依頼情報113と署名条件情報114を別の署名サーバに送る。別の署名サーバは、受信した情報例えば、署名条件情報に記載の署名者のメールアドレス等に基づいて署名者を特定し、当該署名者に対して署名を行うように通知する。別の署名サーバは、当該署名者と連携して、指定された条件または当該署名者からの入力に基づいて署名を行い、署名結果を署名サーバ101へ送信する。なお、署名サーバ101と別の署名サーバ間の通信において互いを認証し、正当な署名サーバからの要求のみ受付けるようにしてもよい。また、署名者側で署名を実施させる場合は、文書の改竄を検知、防止するために、署名サーバ101で署名対象の文書のハッシュ値を取得して保存し、署名者から取得した署名文書と比較したり、署名対象の文書に改竄検知のための署名をつけてから送信するなどしてもいい。また、署名者側で署名を実施する場合でも、ステップS805のように、署名者の署名環境を取得して、正当な場合のみ署名依頼するようにしてもよい。また、署名者の署名環境が一部不適正な場合例えば、署名者の証明書は署名条件を満たすが、その他の条件、例えば署名文書への証明書検証結果の追加が不可などの場合は、署名者側で署名を実施する応答があっても、署名サーバ101上で署名を実施するように依頼してもよい。なお、署名環境の取得については、上述したように、署名者のクライアント端末に署名環境を取得しにいってもよいし、署名者が使用する署名サーバに対して、署名者情報メールアドレス等を指定して取得しにいってもよい。また、ステップS803における署名サーバ101の利用の問い合わせに対して、署名者が応答を間違えることがある。例えば、署名者が署名サーバ101を利用して署名したいのに、誤って署名者側で署名すると回答してしまう場合がある。このような問題に対応するため、署名サーバ101は、例えば一定期限内に署名者から署名文書の送信がない場合には、署名依頼者等にアラート通知を出したり、署名者から署名依頼者にアラート通知を出せる機能を備えてもよい。また、ステップS805において署名者の署名環境の取得を行っているが、例えば一度署名環境を取得済みの署名者に対しては、署名者の署名環境を全面的に信頼して、再度の署名環境の取得を行わないようにしてもよい。以上、第1の実施形態における署名システムによれば、署名依頼対象の署名者を特定して、署名サーバの利用を許可されている内部ユーザであるか否かを判定する。署名者が内部ユーザであると判定すると、署名者の使用する計算機に対して署名サーバを利用した署名実施を依頼し、署名者が内部ユーザではないと判定すると、署名者の使用する計算機に対して署名サーバの利用要否を問い合わせる。署名サーバの利用要否の問い合わせに対して、署名サーバを利用するとの応答があった場合には、署名者の使用する計算機に対して、署名者の署名環境を取得し、取得した署名環境が適正ではないと判断すると、取得した署名環境の適正化を行う。そして、署名サーバの利用要否の問い合わせに対して、署名者側で署名を実施するとの応答があった場合には、署名者の使用する計算機に対して署名者側での署名実施を依頼するとともに、署名者の署名環境が適正であると判定した場合、または、署名環境の適正化が行われた場合には、署名サーバを利用した署名実施を依頼する。これにより、署名者の署名環境が様々である場合でも、署名者への署名依頼が可能となる。従って、署名者が、署名依頼者が署名依頼で使う署名サーバとは異なる署名環境で署名する場合でも、署名依頼者が意図する署名条件で署名させることができる。また、署名環境の適正化処理として、署名者が署名に使う証明書を適正な証明書にさせるか、または、署名処理のためのプログラムを署名者に送信する処理を行うので、署名者は、適切な署名環境にて署名することができる。また、署名サーバの利用要否の問い合わせに対して、署名者側で署名を実施するとの応答があった場合に、署名の条件を示す署名条件情報、署名の依頼内容を示す署名依頼情報、および、署名対象の文書を、署名者の使用する計算機に対して送信する。これにより、署名者は、受信した署名条件情報、署名依頼情報、および、署名対象の文書に基づいて、署名依頼書の意図した署名条件で署名を実施することができる。また、署名サーバは、署名者が行った署名が署名条件を満たすか否かの検証を行うので、署名者側で署名が行われた場合でも、署名者の意図した条件で署名が行われたか否かを検証することができる。<第2の実施形態>次に、本発明の第2の実施形態について説明する。第1の実施形態では、一回の署名依頼で一人の署名者に署名依頼する例を説明した。第2の実施形態では、ワークフロー形式で、複数の署名者に署名依頼する例について説明する。第2の実施形態における署名システムの構成は、第1の実施形態における署名システムの構成と同じである図1参照。従って、システム構成についての詳しい説明は省略する。第1の実施形態における署名システムで用いられる署名条件情報114の一例を図4aに示した。第2の実施形態における署名システムで用いられる署名条件情報114の一例を図4bに示す。図4bに示す署名条件情報は、図4aに示す署名条件情報と比較すると、新たな署名条件項目として、署名者の順番を示す順番410が追加されている。すなわち、署名者として一人の署名者だけでなく、第一署名者、第二署名者というように、複数の署名者を指定できるようになっている。なお、第2の実施形態における構成及び処理のうち、第1の実施形態と同じものについては、詳しい説明を省略する。以下では、第2の実施形態において、署名者への署名依頼の処理の詳細について説明する。図9は、本発明の第2の実施形態における署名サーバ101が実行する、署名依頼、署名環境の判別、署名の実施および検証についての処理の一例を示すフローチャートである。ただし、本実施形態のうち、第1の実施形態の署名依頼、署名環境の判別、署名の実施および検証の処理図8参照と同様のものについては、それらを引用して差異部分についてのみ説明する。署名条件管理プログラム108は、ステップS812において、署名依頼情報113のステータス306を更新するS901。署名条件管理プログラム108は、更新されたステータス306が未済か否か判断するS902。ステータス306が未済でなく済の場合にはステップS813に進むS904。一方、ステータス306が未済の場合には、次の署名者を判別して、ステップS801に戻り、次の署名者に対して署名依頼するS903。例えば、署名条件情報が図4bに示すようなものである場合、第一署名者の次の署名者は第二署名者であるので、第一署名者の署名処理終了後は、第二署名者に署名依頼する。第一署名者と第二署名者に対して、同じ文書に続けて署名させる場合は、第一署名者が署名した文書に署名するよう第二署名者に依頼する。なお、上記の署名依頼では、署名依頼を受けたユーザは署名を行うものとしているが、例えば文書の閲覧だけ行うユーザなど、署名をしなくてもいいユーザを含めた依頼内容にしてもよい。また、本実施例では、上記の処理以外に、ステップS818の処理が第1の実施形態と異なる。以下で、その詳細について説明する。署名検証プログラム107は、署名者から署名文書を受取り、署名の検証を行う。検証の結果、当該署名者の署名が適正であった場合、署名検証プログラム107は、当該署名文書において、当該署名者の署名よりも以前に行われた署名があるか判別する。例えば、図4bにおいて、署名条件304が条件1の場合、第二署名者の署名よりも前に第一署名者の署名が存在する。このように、署名サーバ101は、署名条件情報104に基づいて判別してもいいし、署名文書の中身を調べて判別してもよい。署名検証プログラム107は、当該署名者の署名よりも前に行われた署名が署名文書に含まれている場合、前に行われた署名についても同様に、署名の検証を行う。当該署名者の署名よりも前に行われた署名が署名文書に含まれていない場合は、検証処理を終了する。続いて、本発明の第2の実施形態の変形例について説明する。本変形例では、署名条件情報114に、新たな署名条件項目を追加した例について説明する。図5aは、本変形例における署名条件情報114の一例を示す図である。図4bに示す、第2の実施形態における署名条件情報114と比較すると、図5aに示す署名条件情報114では、署名条件項目405~407の代わりに、新たな署名条件項目として、準拠すべき署名の標準を示す署名標準420が設けられている。署名標準とは、例えばSAFEやHPKIといった所定の署名基準である。署名標準420は、署名文書内容に関する要件421と、その他の要件422を含んで定義される図5b参照。署名文書内容に関する要件421は、署名標準に準拠するためにどんな形式で文書に署名する必要があるかを定める。その他の要件422は、署名文書の中身に関する要件ではないが、署名標準に準拠するために、署名サーバ101が行わなければならない処理を定義する。図5bに示す例では、二つの標準標準1とHPKIがそれぞれ定義されているが、その他の標準が含まれていてもよい。項目421において、証明書タイプ、証明書検証情報、タイムスタンプは、図4aおよび図4bと同様である。図5bにおいて、署名ロゴとは、署名の見た目を示すイメージデータである。署名ロゴにより、署名を実施した際に、どんなイメージを画面表示させるか指定することができる。図5bの項目422において、操作ログは、署名者など、署名サーバ101を利用するユーザの操作ログを署名サーバ101で取る必要があるか否かを定める。署名文書のアーカイブは、署名サーバ101が署名文書をアーカイブする必要があるか否かを定める。例えば、項目422において、標準1の場合、操作ログは必要であるため、署名サーバ101は、署名者の操作ログを取得するよう動作する必要がある。なお、項目421、422ともに、上記以外の定義を含んでもいい。また項目421、422は、署名システムの管理者等が署名システムで定義しておく、または、署名標準を定義している機関等から定義情報を取得して署名システムに設定し、その定義済みのものを署名依頼者が利用する。ただし、これに限らず、その他の設定方法でもよい。以下に、第2の実施形態の変形例における、署名者への署名依頼の処理について説明する。処理の流れは、第2の実施形態図8参照と同様である。以下では、処理の異なる部分、すなわち、署名の実施および検証についてのみ説明する。署名サーバ101は、ステップS808において、署名者に署名サーバ101上で署名するよう依頼する。このため、署名サーバ101は、署名者の署名標準を判別し、当該署名標準に準拠するよう動作する。具体的には、署名者の署名標準に対応するその他の要件422を参照し、操作ログが要であれば、署名者からの操作ログを取得し保管する。署名文書のアーカイブが要であれば、署名が終了した後に、文書のアーカイブを行う。なお、操作ログの取得は、例えば署名依頼者が文書をアップロードした時点から行うなど、より前の段階から行うようにしてもよい。また、操作ログは、当該署名者の操作ログだけでなく、当該署名対象の文書へのあらゆるユーザの操作ログを取るようにしてもよい。署名の実施については、第2の実施形態と同様に、項目401~404、410、420を満たすように行う。署名の検証については、署名サーバ101側でなく、署名者側で署名を実施した場合の処理が異なる図8のステップS817、S818に対応。署名サーバ101は、ステップS817で、署名者に署名者側で署名するよう依頼する。この際、署名サーバ101は、署名者の署名標準を判別し、当該署名標準に準拠するよう、どんな条件で署名すればいいか通知する。具体的には、署名者の署名条件情報として、項目401~404、項目420が示す項目421、422の情報を署名対象の文書と合せて通知する。署名サーバ101は、署名者が実施した署名文書を受取り、署名を検証する。具体的には、第2の実施形態と同様に、署名文書が項目401~404、および、項目421の条件を満たすように署名されているか検証する。さらに、項目422の条件も満たしているか検証する。例えば、操作ログが要であれば、署名文書とともに操作ログ情報も送付されているか検証する。操作ログについては、第三者による改竄防止のため、署名者側で操作ログへの電子署名をつける等してもよい。署名文書のアーカイブが要であれば、署名文書とともに、署名文書のアーカイブも送付されているか検証する。なお、署名文書のアーカイブが送付されてない場合には、署名サーバ101側でアーカイブを行うようにしてもよい。なお、図5aにおいて、第一署名者の署名標準は標準1で、第二署名者の署名標準はHPKIである。この場合、署名サーバ101は、第一署名者の署名を実施検証する場合は、標準1に対応した動作を行い、第二署名者の署名を実施検証する場合は、HPKIに対応した動作を行う。例えば、図5aに示す署名条件情報114の場合、第一署名者の場合は操作ログが必要で、第二署名者の場合は操作ログが不要というように、署名サーバ101は動作する。なお、複数の署名者の署名を要求する署名依頼の場合、署名者のうち一人でも項目412の要素が要の人がいれば、その他の署名者についても、全て当該要素を要として処理するようにしてもいい。すなわち、署名サーバ101は、署名依頼するにあたり、当該署名依頼の署名者が複数か判別する。複数の場合は、各署名者に対応する署名標準420の要件である項目422を調べる。項目422の各要素について、署名者のうち一人でも要の人がいれば、本署名依頼において、他の署名者についても要として処理する。例えば、図5aに示す署名条件情報114において、第一署名者と第二署名者の一方が操作ログ要であるため、第二署名者についても操作ログを取得する。署名サーバ101は、署名者からの操作要求のたびに、当該署名者の署名標準を参照して上記の動作方法を決めてもいいし、各署名依頼において、現在の署名サーバの動作方法を判別するための動作設定情報例えば、標準1に準拠かつ他署名者との兼合いで文書アーカイブも要などを別途設けて、それに基づいて動作方法を決めてもいい。なお、署名標準420については、複数の標準から任意のものを署名者に選ばせるようにしてもよい。その場合、署名者側で実施した署名の検証については、当該署名がどの署名標準に合致するか、各署名標準の要件と照らして逐一検証して判断してもいいし、署名者が使った証明書の情報に基づいて、どの署名標準を使ったか判断例えば、署名標準-証明書発行機関の対応関係情報を持っておき、どの機関から発行された証明書を使ったかで判断して当該標準について検証してもよい。また、どの署名標準を使ったか、署名者から情報を受信して、当該標準について検証してもよい。なお、第1の実施形態においても、上述した署名標準を使う処理方式としてもよい。以上、第2の実施形態における署名システムによれば、署名依頼対象の署名者が複数存在する場合に、署名の条件を示す署名条件情報に基づいて、全ての署名者が署名を行ったか否かを判定し、全ての署名者が署名を行っていないと判定すると、次の署名者に署名実施を依頼する。これにより、署名依頼対象の署名者が複数存在する場合でも、全ての署名者に対して署名依頼を行うことができる。また、署名実施を依頼する際に、所定の署名基準である署名標準に関する情報を含む署名条件情報を、署名者の使用する計算機に送信することにより、署名標準に応じた署名の実施を依頼することができる。<第3の実施形態>続いて、本発明の第3の実施形態における署名システムについて説明する。第3の実施形態では、ある署名者への依頼を、別の署名者に代理で処理させる例について説明する。例えば、製薬会社や医療機関では、CRO開発業務受託機関やSMO治験実施施設管理機関等の機関に、業務の一部を委託、代行させることがある。本実施形態は、例えばそのような委託や代理の場合の署名依頼に関する。図11は、第3の実施形態における署名システムの構成を示す図である。なお、図11では、署名サーバやクライアント端末のソフトウェア構成メモリ等に格納されているプログラム情報などを図示していないが、第1の実施形態または第2の実施形態の構成と同様であり、説明を省略する。第3の実施形態における署名システムは、1以上の署名サーバ1001または/および署名サーバ1002と、1以上のOCSPサーバ1003と、1以上のタイムスタンプサーバ1004と、署名機能を持たない1以上のクライアント端末1005または/およびクライアント端末1006と、1以上のクライアント端末1007または/およびクライアント端末1008とを備える。なお、第1の実施形態や第2の実施形態と同様に、自社署名サーバ128やその他の機器を含んでもいい。クライアント端末1006は、クライアント端末1005からの依頼をうけて、クライアント端末1005の業務を代行する。クライアント端末1008は、クライアント端末1007からの依頼を受けて、クライアント端末1008の業務を代行する。なお、本実施形態のうち、第2の実施形態の署名依頼、署名環境の判別、署名の実施および検証の処理と同様のものについては、それらを引用して、差異部分についてのみ説明する。図10は、本発明の第3の実施形態における署名システムで行われる署名の依頼、代行処理の一例を示すフローチャートである。署名依頼者からの署名依頼の実施要求を受け、アカウント管理プログラム105は、署名依頼の内容に基づいて、署名者を判別する。ユーザ連携プログラム109は、当該署名者に対し、署名依頼があることをメール等で通知し、依頼処理を自分で行うか代行させるかを問合わせるS911。署名者から、代行させない応答があった場合には、ステップS801に進み、代行させる応答があった場合には、署名者から代行者の指定を受付けて、依頼内容を更新するS912、S913、S915。具体的には、署名サーバ101は、署名者に対して一時アカウントを発行するか、もしくは既存のアカウントを使って貰う等して、署名者から代行者を指定して貰う。代行者の指定は、例えば、メールアドレス等を指定してもらうことにより行う。署名サーバ101は、代行者の指定を受けて、署名依頼情報113と署名条件情報114を更新する。署名依頼情報113については、項目303において新たに代行者を追加し、項目306も例えば署名者が増えるなら、それに応じて更新する。署名条件情報114については、代行要求を行った署名者の署名条件をそのまま代行者の署名条件として設定してもいいし、署名依頼者や代行要求者が新たに署名条件を設定し直してもいい。例えば、図4bに示す署名条件情報おいて、第一署名者が代行を要求すると、第一署名者と第二署名者の間の列に新たに代行者の署名条件を作成し、第一署名者と同じ署名条件を設定する。第一署名者の署名条件には、代行中であることを示す値が設定される。なお、署名条件情報において、各署名者の代行の有無を判別するための情報を別途設けてもよい。図4bに示す署名条件情報おいて、第一署名者が代行要求を行った場合、代行者の署名実施後に、次の署名者として第二署名者に署名依頼を行うが、それ以外に、例えば代行者の署名実施後に代行結果を一旦第一署名者に確認承認や署名等してもらってから、次の署名者に署名依頼するようにしてもよい。ユーザ連携プログラム109は、代行者に対し、署名依頼があることをメール等で通知し、署名依頼処理を自分で行うか代行させるかを問合わせて、ステップSS912に進むS914。なお、第1の実施形態においても、上記の署名代行を行う処理方式としてもよい。以上、第3の実施形態における署名システムによれば、署名者の使用する計算機から署名の代行要求を受け付けると、代行要求に基づいて、署名の条件を示す署名条件情報、および、署名の依頼内容を示す署名依頼情報の内容を更新して、代行者の使用する計算機に対して署名実施を依頼する。これにより、署名者ではなく、署名者に代わって署名を行う代行者に対しても、署名実施を依頼することができる。以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計なども含まれる。