You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
2.2 KiB
58 lines
2.2 KiB
<!DOCTYPE html>
|
|
<html lang="ja">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
<meta http-equiv="Content-Script-Type" content="text/javascript">
|
|
<meta http-equiv="Content-Style-Type" content="text/css">
|
|
<title>Two-level Homomorphic Encryption demo</title>
|
|
<link rel="stylesheet" type="text/css" href="style.css">
|
|
<script type='text/javascript' src="jquery-3.2.1.min.js"></script>
|
|
<script type='text/javascript' src="exported-she.js"></script>
|
|
<script type='text/javascript' src="mclshe.js"></script>
|
|
<script type='text/javascript' src="she.js"></script>
|
|
<script type="text/javascript" src="she-demo2.js"></script>
|
|
</head>
|
|
<body>
|
|
<h1>レベル2の順同型暗号デモ</h1>
|
|
<div>
|
|
ライブラリの状態 <span name="status">初期化中</span>
|
|
</div>
|
|
|
|
<div id="left">
|
|
<h2>クライアント</h2>
|
|
秘密鍵 : <div name="sec" class="hex"></div>
|
|
|
|
<table border=1 id="client_table" width="100%" summary="client">
|
|
<tr id="client_header"><th>x(ビールを買った)<th>y(次の日会社を休んだ)<th class="hex">EncG1(x)<th class="hex">EncG2(y)</tr>
|
|
</table>
|
|
<input type="text" name="append" value="1,1">
|
|
<button type="button" onclick="append()">1. 行を追加する</button>
|
|
<br>
|
|
<button type="button" onclick="send()">2. サーバに送信する</button>
|
|
<div>暗号文を受信する</div>
|
|
<div name="encSumC" class="hex">0</div>
|
|
<button type="button" onclick="dec()">6. 暗号文を復号する</button><br>
|
|
ビールを飲んで次の日会社を休んだ人数<div name="ret">0</div>
|
|
|
|
</div>
|
|
|
|
<div id="middle">
|
|
</div>
|
|
|
|
<div id="right">
|
|
|
|
<h2>サーバ</h2>
|
|
公開鍵 : <div name="pub" class="hex"></div>
|
|
|
|
<table border=1 id="server_table" width="100%" summary="server">
|
|
</table>
|
|
<button type="button" onclick="mul()">3. EncG1(x)とEncG2(y)を掛けてEncGT(x * y)にする(=各行がビールを飲んで休んだかどうか)</button><br>
|
|
<button type="button" onclick="sum()">4. EncGT(x * y)の総和をとる(ビールを飲んで会社を休んだ人の総数)</button>
|
|
<div>暗号文の集計結果</div>
|
|
<div name="encSumS" class="hex">0</div>
|
|
<button type="button" onclick="recv()">5. 結果をクライアントに送信する</button>
|
|
|
|
</div>
|
|
|
|
</body>
|
|
</html>
|
|
|