mijinクラウドチェーンβの公開テスト

takao ()
弊社で用意したmijinネットワーク上で、公開テストを行います。

クラウドチェーンβプログラムの利用に漏れた方も、本テストでは全く同様の使い方や試験が可能です。違いは 、本ネットワークは他のテスター達と共有されているという点です。

また、本テストには、弊社のアカウントから内部トークンを受け取らねば一切の作業が行えないため、まずは以 下の方 法でアカウントを取得し、公開鍵を投稿して頂ければそのアドレスにそれを送金します。受け取った内部トーク ンは他のアカウントに送金したり、mijin上で独自コインを作成したりすることができます。

本テストに参加するには、以下からlight walletをダウンロードし、windowsマシンにインストールしますと、完全なウォレットとしてお使 い頂けます。以下の手順に従ってテストにご参加下さい。
  1. Light Walletをインストールする。
  2. http://bob.nem.ninja/beta-testnet/li...n-nginx1.8.zip より。解凍パスワードは"nem"です。
  3. 以下より、アドレス、秘密鍵、公開鍵を入手する。リンクを叩くと自動生成されます。
  4. http://133.242.230.245:7895/account/generate
  5. Light Walletをたちあげ、以下のいずれかのURLを接続先として接続しますと、mijinネットワークにつ ながります 。
  6. http://133.242.230.245:7777 (石狩) http://153.127.192.174:7777 (石狩) http://59.106.210.143:7777 (東京) http://59.106.209.120:7777 (東京)
  7. こちらのフォームから、利用申し込みを申請する。
  8. http://mijin.io/ja/mijin-cloud-chain...kura-open-beta
  9. 申し込み完了のメールに対して、上記方法で発行された「アドレス」を「Xemクレクレ」とご返信下さい。こ ちらから、利用に必要なトークンを送金いたします。
  10. そのトークンを用いて、Light Walletから送金をしたり、内部アセットを作ったり、知り合いに配布したりと自由に操作出来ます。
  11. 当然ながら、APIを用いての開発も可能です。API仕様は以下にあります。
  12. http://bob.nem.ninja/docs/ API利用の際も、上記4ノードのいずれかをご利用下さい。
  13. なお、本サービスについては、申込時の利用規約の「無償テスト・フライトプラン」に対するものがそのまま適 用されます。利用されたサービスウェブサイト、ドキュメント、レポート、顧客への提出物など全てにおいて、 「さくら インターネット」が運営する「さくらのクラウド」上で、テックビューロが開発するプライベート・ブロックチ ェーンのクラウド化技術である「mijinクラウドチェーン」を利用している」旨を併せて公表する必要があ ります。
  14. 本環境の提供期間は2016年6月末日までとなります。
なお、本件はユーザー参加型です。細かい使い方などを投稿して下さればそのまま採用してピン止めします!ま た、積極的な協力者には多めに内部トークンをお送りしますので、そのユーザーからトークンを受け取ることも 可能です。是非実験へのご協力をお待ちしております。

また、ご利用の際は以下の点にご注意下さい:
  1. ネットワーク上で処理を行う際には、必ず上記トークンによる手数料を付加する必要があります。
  2. 本テスト環境では、設定ファイルにあるノードのIPアドレス一覧、及びブロックチェーンに記録されるブロッ クデータは「全てインターネット上で公開された状態」になっています。なお夏に提供を予定している製品版で は、それらデータをプライベートネットワーク内で閲覧不可とできるほか、トランザクションごとに権限を設定 できる機能を実装する予定です。
  3. 本ネットワークは6月末に閉鎖されるため、内部にあるトークンやアセットは何の価値も持ちません し、消去される予定ですのでご理解の上お試し下さい。
なお、本テストは、さくらインターネット様で提供頂いている、mijinクラウドチェーンβ上で、秒間25 トランザクションに絞られた環境で稼働しております。

では、よろしくお願いいたします。

LHJ ()
実証実験環境ありがとうございました。

おそらく、「これどうやって使うの?」と思われる方(自分も?)がいると思うので、「こういう風にやってい るよ」とプロフェッショナルな方がポストしていただけるといいなと思いました。自分は、ドイツ発のとあるO SSを日本に普及した経験から、想像以上に大変でした(笑)

ということで新規アカウントをまずは作成しましょう。簡単です。ブラウザで以下のとおりアクセスしましょう。"xxx"はIPアドレスです。

http://xxx.xxx.xxx.xxx:7895/account/generate

JSONファイルをダウンロードできますのでPCにローカル保存しましょう。
JSONファイルは非常に大切な認証情報ですので、間違ってもGitHubなどに公開しないようにしましょう。

ということで、次はプロフェッショナルな方にリレーします(笑)
楽しみながらmijinを触っていきたいですね!

Takanobu ()
次に、作成したアカウント(口座?)の情報にアクセスしてみましょう。

http://xxx.xxx.xxx.xxx:7895/account/get?address=Mxxx


メタ情報とアカウント情報が出てきましたね。
■meta
cosignatories []
cosignatoryOf []
status LOCKED
remoteStatus INACTIVE

■account
address Mxxx
harvestedBlocks 0
balance 0
importance 0.0
vestedBalance 0
publicKey null
label null
multisigInfo {}

balance が残高でしょうか。初期設定で設定されたアカウントからこちらに送金してみたいですね。
いろいろstatus を変更する必要があるでしょうか?
あとvestedBalanceとはなんでしょうか? 金融ど素人なので、詳しいかた教えてください。

それでは次の方、どうぞ。

LHJ ()
メール「mijin対応のJavaScript版Light Walletリリースのお知らせ」が届きましたので、やり方を箇条書きで記載しますね。間違いあったらご指摘ください。
(2016/02/04編集: lightwallet-standalone-1.6-cdn-nginx1.8 → lightwallet-standalone-1.7-cdn-nginx1.8 に変更)

1. http://bob.nem.ninja/beta-testnet/li...n-nginx1.8.zip をDL

2. 解凍PWは nem

3. 解凍先フォルダ内の start-nginx.bat を起動 //停止は stop-nginx.bat

4. ブラウザで http://localhost:7777/lightwallet/login が開く

5. 最下段の Custom node: に http://xxx.xxx.xxx.xxx:7777 を入力し、コネクト //portは7777でOK

6. "I already have a private key that I want to import"をチェック

7. Wallet name: , Account's address: , Private Key , Password: を入力し、クリエイト //PWは大文字、小文字、数字の組合せで10文字以上

8. "Choose wallet:" の Wallet name を選択してログイン


添付のようになればOK!(さくらインターネットさん、オブジェクトストレージ使っていますね。S3バケッ トみたい)

kumamoto ()
実証実験環境の整備ありがとうございます。

初心者でも書き込んで大丈夫、と信じて質問させてください。

Pythonで「/account/generate」を叩いて
新規アカウントは問題なく作成できたのですが、
お金の受渡しで401エラーになってしまいます。

====================================================================
json_data = {'transaction':{'timeStamp': 【現在のタイムスタンプ】, \
'amount': 1000000000, \
'fee': 1000000, \
'recipient': '【送り先のアドレス】', \
'type': 257, \
'deadline': 【現在のタイムスタンプ+1時間】, \
'message':{"payload": "", \
"type": 1}, \
"version": -1744830463, \
"signer": "【送り元の公開鍵】"}, \
"privateKey": "【送り元の秘密鍵】"}

resp = requests.post('http://xxx.xxx.xxx.xxx:7895/transaction/prepare-announce', data=json.dumps(json_data))
====================================================================

「NEM NIS API Documentation」の
「7.2.1.Version 1 transfer transactions」
を見つつ上記のように作成したのですが、どうもうまくいかず…。

401なのでおそらく「自分が送り元」という認証が必要だとは
思うのですが、どう解消すればいいのかわからず。

takao ()
先ほど、全員に更に100k XEMを追加で送金しました。

takao ()
皆様、テストはいかがでしょう?

TakerMaker ()
初めまして。
Macのターミナルでコマンドを入力しましたが、以下のようなエラーが返ってきてしまいました。
CLIに慣れていないので、何が原因なのかイマイチわかりません。
"error":"Internal Server Error","message":"expected value for property height, but none was found"
入力したコマンドは以下の通りです。
curl -v -H "Accept: application/json" -H "Content-type: application/json" -X POST -d '{"blockHeight": {"height":"1"}}' http://XXX.XXX.XXX.XXX:ポート番号/block/at/public

JSON形式でのデータ送信はこれで問題なくできているのでしょうか?
宜しくお願いします。

LHJ ()
Light Wallet 青色「Plain Transfer Trasaction」でXEMを送金しようとすると添付のとおり怒られます。

Warning: Encrypted message selected, but couldn't find public key of a recipient

極めて簡単な問題で、「public key がないよ!」で、確かに Light Wallet のWallet の public key は空白です。どうやって public key を組み込めばよろしいでしょうか?
β版、公開版ともにで、鬼基本的なことで恐縮ですが、恥を忍んでご教示のほどよろしくお願い致します。

takao ()
説明文に、4ノード全てを公開しました。
どのノードに接続しても同様にトランザクションが処理されます。
通常のサービスはルーターなどでロードバランスや分散を行いますが、ブロックチェーンではアプリケーション側での制御が必要です。
2ノードずつ、東京都石狩に地理分散した状態で稼働しておりますので、いろいろとお試し下さい。

takao ()
明日より一般にもβテスターを公募する予定です。

takao ()
Tipsのスレッドを、利便性のため一旦こちらのスレッドに統合いたしました。

LHJ ()
wallet に Public key が付与(生成)されるタイミングは「送金したとき」と理解しました。
xem を受け取った時点で Public key は生成されていない。

PKI(公開鍵暗号方式の基盤)の知識があると、どうにも Public key がないと気持ち悪かったので(笑)
間違っていたらご指摘くださいませ~。

なお、root から Namespace を生成するのに xem が足りないでござる。
さすが権威サーバ(それDNSの話)

LHJ ()
Mosaic と Balance の違いについて、サル(当方)でもわかるように教えていただけないでしょうか?

takaoさんから「xemクレクレ」で送金を受け取ったアドレスでは、Mosaicの量(Quantity)はGETできますが、
自分が他のアドレスに送金した後、他のアドレスの Mosaic の量(Quantity)は 0 のままなので、「むむ~」と悩みました。

Google先生に質問してもご機嫌悪いようです(笑)

negokaz ()
Light Wallet (下記) をダウンロードして Mac 上で起動してみたのですが、手順が合っているか不安です。
http://bob.nem.ninja/beta-testnet/lightwallet-standalone-1.7-cdn-nginx1.8.zip​
以下の手順で問題ないでしょうか?

1. nginx をインストール (brew などで)
2. Light Wallet の zip ファイルを解凍
3. zipファイルを解凍して展開されたディレクトリに移動
4. nginx -p ./ -c conf/nginx.conf を実行

toshirot ()
こんばんは高橋と申します。

APIを使いたいと思っているのですが、質問です。

http://bob.nem.ninja/docs/#introduction によると
APIを使うには、http://bob.nem.ninja/
http://bob.nem.ninja/installer/nis-ncc-0.6.73.zip などを落とす必要がある
のでしょうか?

でも、以下のようにChromeにブロックされてしまいます><

この先のサイトには有害なプログラムがあります
bob.nem.ninja の攻撃者が、閲覧環境を損なうプログラムをインストールさせようとしている可能性があります(ホームページを改ざんする、アクセス先のサイトに追加の広告を表示するなど)。

takao ()
最近多いですがメールでのサポートは行っておりませんのであしからず。

TakerMaker ()
MacへのLightWalletインストールに関して、Twitterで紹介されているやり方の詳細です 。

1. nginx をインストール。
2. Light Wallet の zip ファイルを解凍。
3.解凍後のフォルダ内にあるconf/nginx.confを開く。
4.nginx.confのserverブロックをコピーする。
5.適当なエディタを開いて、コピーした部分をペースト。
6.location /lightwalletブロックのroot lightのlight部分をフルパスに変更、*.confとして保存。
7.保存したファイルをnginxのserversフォルダへ移動。(homebrewでnginxをイン ストールした場合は/usr/local/etc以下にあります。)
8.コンソールを起動して、nginxと入力。(nginxを止める場合はnginx -s stopと入力)
9.Safariを起動して、http://localhost:7777にアクセスする。

TakerMaker ()
Twitterにてこんな便利サイト発見。テストが捗りそうです。
http://mijin.usayama.com/

takao ()
再度のお知らせです。

製品版では、内部XEMによる手数料等はオフにすることが可能となります。
今回のオープンβでは、ネットワークがインターネット上でオープンであるため、スパムトランザクションを排除するためにあえてXEM手数料を必須としております。
送金等の実験をされる方は、内部XEMではなく、作成されたアセットにてテストをお願いいたします。

LHJ ()
サル(当方)でもわかるシリーズ

xemを送金するとき、
まずはメソッド(OPTIONS)で「認めているAPIはなんなのさ?」と訪ねます~(添付参照)
そのあとメソッド(PUT)で以下のように送ります~

{ data: ********
,signature : ********
}

応答結果は transactionHashのオブジェクトにペイロード(data)として格納され、そのペイロード(date)はLightwalletのトランザクション結果の「hash」と同じとなります~

inatomi ()
社内でテストしてみたいので、XEMを頂けると助かります。
[FONT=Helvetica Neue][SIZE=14px]MBF2VP-HNL2M4-4SADWJ-OCRZBA-KH55CO-RKZI5J-FL6E[/SIZE][/FONT]

shannon ()
ちょっと聞きたいんですが、
1〉今週木曜日に、送金の実験をしましたけど、問題なかった、今日は再度試したら、下記のエラーメッセージが出ています、どういう原因ですか?
2〉私のwalletに、残高が急にゼロになってしまった、送金の履歴から見ると、不明のアカウントに全額の送金履歴があります、プライベートキーは
誰にも教えなかったのに、どういう原因ですか?(添付にキャプチャあります)

LHJ ()
現在、マルチシグネチャ(通称:マルチシグ)について確認しています。2点ほどアドバイスをいただけないでしょうか?

前提として、マルチシグネチャは2つの秘密鍵を使って署名(シグネチャ)を生成するものだと理解しております。

■1点目
Lightweight に表示される multisig accounts は、当方がアカウント作成時に生成された Private Key が1つ。
もう1つは誰が保有している秘密鍵を使っているのでしょうか?

LightWalletでは以下に記載
—–
Different mosaics owned     1 (includes mosaics owned by multisig accounts) ← ここのお話しです。
—–

■2点目
Transfer transaction with mosaics 時に、Multiplier という項目があります。これは上述のマルチシグネチャと相関するのでしょうか?
Multiplier の値はいかようにでも変更できるので、マルチシグネチャとは関係ないと思いつつ、使い 方のイメージが沸かない状況です。


この2点について、LightWallet の画面を添付致しました。(視覚的わかりやすくした方が望ましいと思いまして。)

Takanobu ()
すいません、素朴な疑問ですが、送金時に発生したfeeはどこに回収されるのでしょうか?税務署的なアドレスがあるのでしょうか?

Takanobu ()
/account/generate で作成したアカウントについて。

今まで、最初に割り振っていただいたアカウントにて送金テストなど行っていましたが、
自分で作成したアカウントからの送金ができないことに気付きました。
(送金を受けることはできます。モザイクを受け取ることもできます。)

あと、/account/get で得られる情報では publicKey が null となっています。
LHJさんの書き込みもありましたが、送金してもこの項目に publicKey がセットされる気配がありません。

みなさん、どんな感じでしょうか?

Tkm ()
ベータ版で提供いただいた4つのノードと、Open版の4つのノードは互いにアドレスを共有するのでしょうか?
前者で生成したアドレスと秘密鍵の組が、後者でも使える(LightWalletでそのアドレスと秘密鍵を使ってアカウントを作りログインできる)みたいですが、片方に送金しても、もう片方には入金されていませんでした。そういうものでしょうか?

takao ()
[FONT=Arial][SIZE=14px]みなさん、mijin内のxemはPaaSやクラウド環境でスパミングを防ぐためだけに内部手数料として使いますので、サービス構築はmosaicで独自アセットをちゃんと作って下さいね。製品版ではxemを使わずに使用する事もできますので。[/SIZE][/FONT]

takuya ()
所定の手続きをして3日以上経っておりますが、Xemを頂けておりません。審査に時間がかかるのでしょうか? こういった分野はスピードが肝だと思うので、早急なご対応をお願いしたいです。よろしくお願いいたします。

kumamoto ()
他の方々のスクリプトをパク……オマージュして、送金用HTMLを作成しました。

取引投入(用のリンク作成)
http://somethingtest.tank.jp/mijin/generateurl.html

上記で入力した値をURLパラメータとした↓へのリンクを生成
http://somethingtest.tank.jp/mijin/send.html

パラメータが問題なければ送金が行われるはず、です。

それだけでは何なので、残高、取引履歴確認用のHTMLも作成。
クロスドメインは考えていないので、「リンク遷移⇒表示したJSONをコピー⇒貼り付け」で。
http://somethingtest.tank.jp/mijin/kakunin.html

takao ()
皆様、その後はいかがでしょう?

takuya ()
入金いただけたと連絡がありましたが、アカウントLOCKED、INACTIVEで残高もないようです。。

takao ()
まずブロックチェーンの公開鍵と秘密鍵で使用するアカウントにLocked、Inactiveという概念がないんですが、どういう状況でしょうか?

入金いただけたと連絡がありましたが、アカウントLOCKED、INACTIVEで残高もないようです。。

ShuKobuchi ()
walletのファイルをデスクトップに置いたらネットワークエラー(?)となってましたが、
Cドライブ直下に置くと動きました。
変なところに配置して困っている方がいれば、Cドライブ直下とかに置いてみてください。

LHJ ()
Linuxマシンを使ってmijinからいろいろな情報を取得(GET)しましょう。
ただし、コマンド(wget,curl)だけですと整形されていないjsonが表示されますので、python先生のお力を使いましょう。

Linuxは基本なんでもOKです。Ubuntu、CentOS、AmazonLinuxがあります。ただし、pythonは2.6以降を使いましょう。
まず、pythonのバージョン確認です。

$ python -V
Python 2.7.10 ←バージョンは2.7系ですね。

mijinのステータスでも見てみましょう。
$ curl -s http://xxx.xxx.xxx.xxx:7895/status | python -m json.tool

そうすると以下のように表示されます。

{
 "code": 6,
  "message": "status",
  "type": 4
}

綺麗ですね。curlで出力された内容を、パイプ(|)でpython先生に渡すことでjsonが綺麗に表示されます。python先生凄いですね!
なお、json整形には jq というツールがあります。こちらも強力ですよ!

kawanode ()
ブロックチェーンについてはほとんど素人なので、ありがたいです(^^)

LHJ ()
「Lightwallet」ツールはGitHubに公開されています。

https://github.com/NewEconomyMovement/nem-lightwallet

こちらをDLして使うという意味ではなく、ソースコードをGithubで見るという感じでご参考くださいませ。

※LHJさんがコメントした内容にミスがあったので修正しました。失礼致しました。(2016/03/26)

Nocchy ()
開発環境に関する情報をアップして頂き、大変役にたちそうです。
ありがとうございます。参考にさせて頂きます。

takao ()
Vestedは内部通貨であるXEM手数料を認証ノードとして取得した場合、それが反映された上での残高ですね。

takao ()
素晴らしいので2スレッドにコピーしました。

LHJ ()
全スレッドを修正しておきました。

(2016/02/04編集: lightwallet-standalone-1.6-cdn-nginx1.8 → lightwallet-standalone-1.7-cdn-nginx1.8 に変更)

Takanobu ()
私も prepare-announce のところでつまづいています。 json_data = {dummy (←構文的におかしい)などでも401 が返ってくると思うのですがいかがでしょうか?

flops ()
mijinだけでなくNEMのNISも同じ挙動のようで、リモートマシンから呼び出すと401 Unauthorizedが返ってきます。

flops ()
単純にprepare-announceの仕様で、ローカルサーバーからの呼び出しでないと実行できないのだと思います。

Takanobu ()
lightwallet の js を解析しつつ、すこしずつ理解が深まってきました。
まず、Transfer Transaction に使用するAPIは7.9 /transaction/announce のようです。

送金に関するロジックは Transactions.js で以下のように記述されています。
================================
o.serializeAndAnnounceTransaction = function(entity, common, tx, nisPort, cb, failedCb) {
var kp = KeyPair.create(fixPrivateKey(common.privatekey));
var result = o.serializeTransaction(entity);
var signature = kp.sign(result);
var obj = {'data':convert.ua2hex(result), 'signature':signature.toString()};

$http.post('http://'+CURRENT_HOSTNAME+':'+nisPort+'/transaction/announce', obj).then(function (data){
cb(data);
}, function(data) {
failedCb('announce', data);
});
=================================
entitiy がいわゆるjson_dataです。
つまり、生データをそのままpostしてもダメで、
serializeTransaction で加工した後 - > result
kp.sign で署名 -> signature
する必要があるようです。

取り急ぎ。

kumamoto ()
「/prepare-announce」から「/announce」に変えれば500エラーになることを確認しました。(「/prepare」だと401のまま。)
announceは「信頼されたローカルノードから実行すること」と注意書きがないから大丈夫なはず……と信じてます。

headers = {'content-type': 'application/json'}
json_data = \
{'transaction': \
{'timeStamp': タイムスタンプ,\
'amount': 1000000000,\
'fee': 3000000,\
'recipient': 'アドレス',\
'type': 257, \
'deadline': タイムスタンプ+1時間,\
'message':\
{"payload": "",\
"type": 1},\
"version": -1744830463,\
"signer": "公開鍵"},\
"privateKey": "秘密鍵"}

param = 'transaction/announce'
get = requests.post('http://xxx.xxx.xxx.xxx:7895/' + param, data=json.dumps(json_data),headers=headers)

print get.text

一旦情報を渡すことは成功? 問題は署名のやり方、ですかね…。
どなたか(PythonからのPostで)送金に成功された方いませんか?

TakerMaker ()
私も送金できていませんが、[/transaction/announce]で送るデータ形式は9.35.RequestAnnounceだと思います。
要素はdataとsignatureの2種類。7.9.1に則ってbyte列を手動生成、dataへ入力でしょうか?
署名はトランザクション作成者の公開鍵でいけるかな?
3.Account related requestsにこんな記述がありました。
signature:The transaction signature. The transaction signature is validated using the supplied public key in the field signer. If the signature is not valid, an error is returned from validation

TakerMaker ()
私の予測は外れた模様。素直にlightwallet使いますかねぇ。
"timeStamp": 27188856,
"error": "Internal Server Error",
"message": "org.nem.core.serialization.SerializationException: unexpected end of stream reached",
"status": 500

署名の部分に送信者の公開鍵を記載しましたが、APIのAppendixの例文に比べて短い感じです。
lightwalletの署名作成処理がどうなっているのかわかれば突破可能かも。

shannon ()
すみませんが、
別のWalletに送金してみましたけど、
「failed when trying to send tx: FAILURE_WRONG_NETWORK」というメッセージが出ました
操作方法として、「Plain Transfer Transaction」のポップアップを開けて、相手のAddress
を入力して、sendを押すと、そういうメッセージが出ます、原因とか教えていただきませんか?

Tkm ()
lightwallet-standalone-1.6-cdn-nginx1.8 では、「failed when trying to send tx: FAILURE_WRONG_NETWORK」が出て送金できませんでしたが、lightwallet-standalone-1.7-cdn-nginx1.8では、ちゃんとできました。また、1.6の方では、どういうわけかWalletアカウントの一覧が表示されなくなって、使えなくなってましたが、1.7に変えたら、その現象もいまのところ起きてません。もう少しいろいろ使ってみます。

shannon ()
ご返事ありがとうございました
もう一件を聞きたいですが、
1.7に変わりました、しかし、wallet一覧が出なくなっています
再度importをすると、ユーザー名が既に存在しているというメッセージ
が出ています、どういう風に前のwalletに入れますか、教えていただきませんか?

takao ()
再度秘密鍵などでログインするしかありませんよ

Capone ()
私も1.6から1.7に変えたところ、wallet一覧に出なくなりました。
Wallet nameを変えて、新たにimportしてみましたがダメです。
何か解決策はありませんか?

takao ()
当然秘密鍵は保存しておいて下さいよ?

takao ()
もしくは、ブラウザのローカルストレージやキャッシュを全部消してやり直してみて下さい。

Capone ()
ありがとうございます。ブラウザのキャッシュを消したらwallet一覧に出てくるようになりました。
ただログインは出来たのですが、1.6の時と変わらず、
「failed when trying to send tx: FAILURE_WRONG_NETWORK」が出て送金出来ません。
まだ試行錯誤が必要そうです。

kawakawa ()
今日あたりが一週間の期限だと思うのですが、最初の1個目は問題なく移行できたものの、2個目以降Walletがでてこない症状になっています。
キャッシュクリア等もやってみたのですが、変わらず…
他に何をやればいいでしょうか?

takao ()
1週間の期限の意味が分かりませんが、一度ウェブサーバーを停止、ファイル全部削除、違うフォルダーに再度解凍、ブラウザキャッシュ削除、ウェブサーバー開始、ウェブブラウザで開く、としてみてください。

Capone ()
キャッシュのクリアでWallet一覧は出てくるようになりました。
ありがとうございました。


ただ、続けてすみません。
Walletを使って1つのPCからは送金が出来ていますが、その他のPCから送金出来ない状態です。
その他のPCは全て下記エラーが発生するのですが、解決策のお心当たりは御座いませんか?
※成功するPCからは何度送金してもOKです
※失敗するPCは3台試しましたが、何度やっても下記エラーが発生します

failed when trying to send tx:
FAILURE_TIMESTAMP_TOO_FAR_IN_FUTURE

takao ()
PCの時計が進みすぎてますね

Capone ()
PCの時刻を調整して、3分ほど遅らせたら成功しました。
ご指摘ありがとうございました。

flops ()
ポストするデータはblockHeightキーなしのようです。
また、値は文字でなく数値なのでダブルクオート””を取ってください。
{”blockHeight”: {”height”:”1”}}

{”height”:1} <- 全角ダブルクオートになっているので半角にしてください
に変えてポストしてみてください。

http://neweconomymovement.github.io/
にあるParameterの書き方が誤解を生んでしまうようです。

TakerMaker ()
curl -v -H &quot;Accept: application/json&quot; -H &quot;Content-type: application/json&quot; -X POST -d '{&quot;height&quot;:1}' http://XXX.XXX.XXX.XXX:ポート番号/block/at/public
で行けました。ありがとうございます!

TakerMaker ()
ダブルクォーテーションが&quot;になっちゃってますね。コピペして実験する方は気をつけて下さい。

LHJ ()
■公開版について、
 Light Wallet 青色「Provision Namespace transaction」で Namespace を作成することで、全機能が使えると思います。チャリン音が面白い!!!

■β版について
 いろいろやっているのですが、 Namespace を作成しようと以下のワーニングで進めない。送金フェーズにも進めないでござる orz…。

Warning: failed when trying to send tx: FAILURE_SIGNATURE_NOT_VERIFIABLE

takao ()
バージョン1.7使われてます?

LHJ ()
バージョン1.7を使っています。(手順を整理し、各スレッドにも更新しているので、うむむ・・・でございます)

takao ()
技術者に聞いてますが再現可能ですか?とのことです。
一旦nginx止めて、ファイル全部消して、再度1.7を入れてnginx再起動、そして再ログインで試して頂くしかなさそうですね。

LHJ ()
再現しますね。
・walletを作る時、M*****で始まるアカウントであれば public key は生成されていますが、他のアカウントではpublic key は空白。なるほどと理解。
・M*****で始まるアカウントであっても、Namespaceを作ると怒られる。うぬぬ???な状態。

公開版では問題なく検証できているので、β版は以下の方法がわかると詳細な検証が進められるかな~と思いました。
1.public key 付きwalletを作る方法
2.xemを生成する方法(どのサーバ(GIP)が最初にどうやって生成するのか?も含む)

当方の知識が浅すぎて恥ずかしい限り(笑)
AWSもGUIで理解を深めてから、CLI(SDK)でAPIを叩きまくったタイプなので、Light Wallet は大変魅力的なツールでなんとか進めたい!!!

takao ()
もう一度新しいアカウントに送金しましょうか?

LHJ ()
> もう一度新しいアカウントに送金しましょうか?
β版(not 公開版)はOKでした。私のやり方が間違ってたようで。お手数おかけしました。

Vested balance:
Balance:
Mosaic(nem:xem): ともに「900 000 000.000000」です。どえらい値だ!

これだければ Namespaces 作り放題なので、Light Walletを解析して検証進めます。
ありがとうございました。

takao ()
xem必要であればアドレスいただければ追加で送金します。

takao ()
balanceはxem自体の残高ですが、mosaicは内部で生成されたアセットになります。

LHJ ()
ありがとうございました。

> mosaicは内部で生成されたアセットになります。

生成方法は自分で調べてみますね。

takao ()
Macには入れた経験がないのでどなたか!?

LHJ ()
ツイート検索すると、mijinのlightwalletをOSXで動かした方がおります(凄い方ですが)
下記に引用致しますね。ご参考にしてくださいませ。

「location /lightwallet の root をlightが保存されているフルパスに変えてnginxのserversフォルダに保存すればOKでした。」

negokaz ()
ありがとうございます。

>「location /lightwallet の root をlightが保存されているフルパスに変えてnginxのserversフォルダに保存すればOKでした 。」
なるほど、nginx.conf の location /lightwallet を書き換えるんですね。
今のところ↑に書いた手順で問題なく(?) 動いているので、もう少し様子を見てみます。

TakerMaker ()
横から失礼いたします。Twitterで紹介されていたやり方でMac&Safariでも無事ログインできました。
ただしFireFoxでアクセスすると、通常とは異なる形式のページへ飛ばされてしまうようでうまくいきません…。
普段はFireFox使ってるんでなんとか解決したいところですが。

追記:ウォレット追加したりいろいろと弄っていたらウォレット一覧消えちゃいました。しばらくしたら復活するのだろうか。
さらに追記:ウォレット一覧消えたまま。別のアドレスを入力しても反応なし。参りましたねぇ。
さらにさらに追記:消えてしまったウォレットと同じアドレスと秘密鍵で再度アクセス成功。この2つさえあればなんとかなるのか。

negokaz ()
> ただしFireFoxでアクセスすると、通常とは異なる形式のページへ飛ばされてしまうようでうまくいきません…。
lightwallet の認証情報はブラウザの Local Storage に保存されるようです。
Local Storage の内容が消えてしまったり、違うブラウザで使おうとするとアドレスや秘密鍵でログインをやり直す必要があるみたいです。

LHJ ()
APIを叩くのに記載された zip ファイルは不要でございます。
本スレッドの #2.1 をご参考くださいませ~。

TakerMaker ()
このやり方でアカウントの登録までは問題なくいけますが、肝心の送金ができない模様…
Plain Transfer Transactionを選んでいろいろ入力してSendボタン押した後、ウンともスンとも言わず。
何をどうやって検証したらいいんでしょうかね、これ?
動作検証の手順を知りたいです。

takao ()
他の方は送金などできてますので、考え得るのはLight Walletのバージョンですね・・・。もしくは、nemのノードに接続してしまっているかです。必要あらば再度アドレスを生成して頂いて送金し直します。

takao ()
このサイトは素晴らしいですね!
ご本人はこちらにはいらっしゃらないのでしょうか。

takao ()
所定の申し込み手続きでお願いいたします。

takao ()
オープンベータですか?

takao ()
残高からみてクローズドですね?
メールでお伝えしましたように、初回はメールで秘密鍵お知らせしてますから、必ず新規アカウントにお移しください。今回は連絡フォームから連絡頂けましたら、一度サーバーリセットいたします。その際はノードのipなどお知らせください。

shannon ()
ご回答ありがとうございます
前回に繋がったサーバは【削除済み】
ちなみに、先、新しいアカウントを新規しました、もしリセットできなければ
このアカウント「MCCFMG-IZSJKD-SFAGVS-VCGF4H-PANPEV-SDYY7B-2J4R」
に送金していただければ、続けて体験できると思います、よろしくお願いいたします。

flops ()
初期アカウントのアドレスが vanity address だったのでちょっと気になっていたのですが、
なるほどそういうことだったのですね。

takao ()
shannon さん、すみませんが本件だけ本人確認のため登録済みメールアドレスからリセット希望の旨をメールして下さい。

shannon ()
メールの宛先は<mijin@mijin.io> でいいですか?

shannon ()
@takaoさん、本人確認のため、メールしました、ご確認の程お願いします

flops ()
想像ですが、Mosaic sinkにあるアドレスの公開鍵を使ってるんじゃないかと思います。

一般的な話として、マルチシグネチャのアドレスを生成するために使用するのは秘密鍵でなく公開鍵です。
秘密鍵はアドレスに入金されている資金を移動するときに署名をするために使用します。

flops ()
すみません。sinkは単に作成費用を払うだけのアドレスで違うかも。

LHJ ()
flops さん、こんばんわ。秘密鍵ではなく公開鍵ですね。ありがとうございました。

で、以下スライドでマルチシグネチャについて基礎勉強してきました。 @Mona_toku さん、凄い。
http://www.slideshare.net/ssusere174e3/ss-33733512

NEM NIS API Documentation にも同様なことが書いてありますが、自分で実装させようとすると手が止まるところです。
サル(自分)でもわかるような参考サイトはないものでしょうかね・・・。

ちなみに Multiplier はさらに難しい!
金融派生商品(先物/OP/FX)のレバレッジとも違うようですし。NEM NIS API Documentation を何度読んでも理解できない。

takao ()
トランザクションを承認したノードのアカウントに紐付けられたアドレスに行きます。

Takanobu ()
ありがとうございます!
分散しているトランザクションをいち早く承認できた性能の良いノード(サーバ)提供者が報酬を得るようなイメージでしょうか。
ノードにもアドレスが紐づけられているのですね。アドレスは全ノードに共有されているものかと思いましたが、これはまた別扱いのアドレスという感じですかね。

ど素人ですみません!

Takanobu ()
覚え書きです。

Namespace や mosaic 作成時にrentalfeeとしてxemが必要ですが、その宛先はLightWallet の sinks.js 内にハードコーディングされています。
ネットワークIDに応じて、レンタル料の払い先が違ってくるイメージでしょうかね。

takao ()
こちらは、皆さんに普通に作成したアカウントから送金してますよ・・・。

LHJ ()
Takanobu さん、こんばんわ。ここは最初に悩むところですね。自分なりの解釈を箇条書きで記載します。

・自分で作成したアカウントに送金できるのは、 takao さんから xem をいただいたアドレスからです。(※)
・自分で作成したアカウントに送金された時点では、 public key は生成されない。
・自分で作成したアカウントから送金した時点で、 public key は生成される。

(※) β 版なら メールに書いてある6番目のアドレスです。

間違っていたら問答無用で指摘くださいませ。フルボッコされてこそ成長するはず。
そう、サーバを壊しまくったあの時のように(遠い目)

Tkm ()
LHJさんの箇条書きの動作、確認できました。全くその通り動いてます。

Takanobu ()
すみません、解決しました。

Simple JS版を作るために、js をいろいろいじっていたのがnginx に強烈にキャッシュされていたようなのと、
/account/generate で生成したアカウントの private key に ゴミ? (先頭に00 ) が混ざっておりました。

お騒がせしてすみませんでした。

>LHJ さん
一応、すべてのアカウントからどこへも自由に送金できるようになりました。(β版と公開版は別です)
public key の生成についてはおっしゃる通りのタイミングで表示されますね。

takao ()
そもそもブロックチェーンのアドレスは一定のルールに従って乱数から作りますので、mijinであれば違うノードセット間でも使用できます。当然ながら各アセットの残高は隔離されています。

Tkm ()
別のノードセットで、同じアドレスが使われてても全然構わないということですね。LightWalletでは、アカウント作成時、そのアドレスと秘密鍵が自身のノードセットで生成されたかどうかのチェックはしていないのですね?
また、アドレス生成は、当然既存のアドレスとは被らないようにできているということでよろしいでしょうか?

matsuou1 ()
アドレスは2^160通りあるので、現実的な確率としては被らないということだと思いますよ。
アドレスは、公開鍵のハッシュでしかないので、別のノードセットに同じアドレスが使われても問題ないはずです。
同じ鍵を別々のノードセットで使うだけなので。
もっというと、アドレスの作成自体はオフラインでもできると思います。

という理解を私はしております。(間違いがあればご指摘くださいませ。)

takao ()
あってますよ!

takuya ()
200.000xem頂けておりました。大変失礼しました。引き続き、よろしくお願いします。

Takanobu ()
試してみましたw

私の環境ではデスクトップに置いても動きました。
配置場所で変なキャッシュでも残すのでしょうかねー??

ShuKobuchi ()
Takanobuさん

コメントありがとうございます。書いていただいた内容で原因がわかったかもしれません。
Windowsユーザ名に日本語が含まれていたからだと考えています。
以前、別のアプリを設定するときに、ディレクトリパスに含まれる日本語のWindowsユーザ名が文字化けしてうまくいかなかったことがありました。
デスクトップのディレクトリパスには、Windowsユーザ名が含まれるのでそのせいかな、と考えました。

Takanobu ()
ShuKobuchi さん

原因が解ってよかったです。
実行までが簡単な分、環境依存が強いのかもしれませんね。
こちらもWindowsアプリには気を付けますー。