すべてのプロダクト
Search
ドキュメントセンター

Blockchain as a Service:アカウントインターフェイス

最終更新日:Jan 19, 2025

このトピックでは、主にアカウント操作に関連するインターフェイスパラメーターについて説明します。

アカウントの作成

createAccount

この同期操作を呼び出して、アカウントを作成できます。

  • 関数
public MychainBase<ReplyTransactionReceipt> createAccount(CreateAccountRequest request)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true CreateAccountRequest アカウント作成リクエスト。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase< ReplyTransactionReceipt> MychainBaseResult には response タイプが含まれています。
MychainBase<ReplyTransactionReceipt> result = sdk.getAccountService().createAccount(
    CreateAccountRequest.build(
            adminAccount.getIdentity(), testAccount1, params
    )
);

asyncCreateAccount

この非同期操作を呼び出して、アカウントを作成できます。

  • 関数
public MychainBase<Response> asyncCreateAccount(CreateAccountRequest request, ICallback callback)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true CreateAccountRequest アカウント作成リクエスト。
callback true ICallback コールバック関数。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBaseResult MychainBaseResult には response タイプが含まれています。
MychainBase<Response> result = sdk.getAccountService().asyncCreateAccount(
            CreateAccountRequest.build(adminAccount.getIdentity(), testAccount3, params),
            new ICallback() {
                @Override
                public void onResponse(String txHash, Response response) {
                    System.out.println("async create account, txHash:" + txHash + ", result: " + response.getErrorCode());
                }
            });

CreateAccountRequest

アカウントの作成に必要なパラメーター:

名前 タイプ 説明
account Account 作成するアカウント。
fromAccountId Identity 作成者のアカウント ID 。
mychainParams MychainParams 共通拡張パラメーター

送金

transferBalance

この同期操作を呼び出して、送金を実行できます。

  • 関数
public MychainBase<ReplyTransactionReceipt> transferBalance(TransferBalanceRequest request)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true TransferBalanceRequest 送金リクエスト。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBaseResult MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();

//残高を送金する
MychainBase<ReplyTransactionReceipt> result = sdk.getAccountService().transferBalance(
    TransferBalanceRequest.build(testAccount1.getIdentity(),
        testAccount2.getIdentity(),
        new BigInteger(transferAmount+""),
        params
    )
);

asyncTransferBalance

この非同期操作を呼び出して、送金を実行できます。

  • 関数
public MychainBase<Response> asyncTransferBalance(TransferBalanceRequest request, ICallback callback)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true TransferBalanceRequest 送金リクエスト。
callback true ICallback コールバック関数。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBaseResult MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();

//残高を非同期で送金する
MychainBase<Response> result = sdk.getAccountService().asyncTransferBalance(
    TransferBalanceRequest.build(testAccount2.getIdentity(),
        testAccount1.getIdentity(),
        new BigInteger(transferAmount+""),
        params),
    (txHash, response) -> {
        System.out.println("async transfer balance, txHash:"+txHash+", result: "+ response.getErrorCode());
    }
);

TransferBalanceRequest

送金の実行に必要なパラメーター。

名前 タイプ 説明
fromAcctId Identity 送金元のアカウント。
toAcctId Identity 送金先のアカウント。
amount BigInteger 送金金額。
mychainParams MychainParams 共通パラメーター

リカバリーキーの設定

setRecoverKey

この同期操作を呼び出して、リカバリーキーを設定できます。

  • 関数
public MychainBase<ReplyTransactionReceipt> setRecoverKey(SetRecoverKeyRequest request)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true SetRecoverKeyRequest リカバリー公開鍵を設定するためのリクエスト。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBaseResult MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();

MychainBase<ReplyTransactionReceipt> result = sdk.getAccountService().setRecoverKey(
            SetRecoverKeyRequest.build(testAccount1.getIdentity(), newRecoverKey, params));

asyncSetRecoverKey

この非同期操作を呼び出して、リカバリー公開鍵を設定できます。

  • 関数
public MychainBase<Response> asyncSetRecoverKey(SetRecoverKeyRequest request, ICallback callback)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true SetRecoverKeyRequest リカバリー公開鍵を設定するためのリクエスト。
callback true ICallback コールバック関数。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();

MychainBase<Response> result = sdk.getAccountService().asyncSetRecoverKey(
    SetRecoverKeyRequest.build(testAccount1.getIdentity(), newRecoverKey, params),
    new ICallback() {
        @Override
        public void onResponse(String txHash, Response response) {
            System.out.println("async set recover key, txHash:" + txHash + ", result: "
                               + response.getErrorCode());
        }
    });

SetRecoverKeyRequest

リカバリー公開鍵のリセットに必要なパラメーター:

名前 タイプ 説明
acctId Identity 設定するアカウント ID 。
recoverPubKey String 新しいリカバリー公開鍵。
mychainParams MychainParams 共通パラメーター

公開鍵の事前リセット

preResetPubKey

この同期操作を呼び出して、公開鍵を事前リセットできます。

  • 関数
public MychainBase<ReplyTransactionReceipt> preResetPubKey(PreResetPubKeyRequest request)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true PreResetPubKeyRequest 公開鍵を事前リセットするためのリクエスト。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();

// 事前リセット
MychainBase<ReplyTransactionReceipt> result = sdk.getAccountService().preResetPubKey(PreResetPubKeyRequest.build( acctId, params));

asyncPreResetPubKey

この非同期操作を呼び出して、公開鍵を事前リセットできます。

  • 関数
public MychainBase<Response> asyncPreResetPubKey(PreResetPubKeyRequest request, ICallback callback)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true PreResetPubKeyRequest 公開鍵を事前リセットするためのリクエスト。
callback true ICallback コールバック関数。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();



MychainBase<Response> response = sdk.getAccountService().asyncPreResetPubKey(
    PreResetPubKeyRequest.build(accId, params), new ICallback() {
        @Override
        public void onResponse(String txHash, Response response) {

        }
    });

PreResetPubKeyRequest

公開鍵の事前リセットに必要なパラメーター。

名前 タイプ 説明
acctId Identity 事前設定するアカウント ID 。
mychainParams MychainParams 共通パラメーター

公開鍵のリセット

resetPubKey

この同期操作を呼び出して、公開鍵をリセットできます。

  • 関数
public MychainBase<ReplyTransactionReceipt> resetPubKey(ResetPubKeyRequest request)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true ResetPubKeyTransaction 公開鍵をリセットするためのリクエスト。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();


// 公開鍵をリセットする
MychainBase<Response> response = sdk.getAccountService().resetPubKey(
    ResetPubKeyRequest.build(testAccount1.getIdentity(), authMap, params));

asyncResetPubKey

この非同期操作を呼び出して、公開鍵をリセットできます。

  • 関数
public MychainBase<Response> asyncResetPubKey(ResetPubKeyRequest request,ICallback callback)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true ResetPubKeyRequest 公開鍵をリセットするためのリクエスト。
callback true ICallback コールバック関数。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();

// 公開鍵をリセットする
MychainBase<Response> response = sdk.getAccountService().asyncResetPubKey(
    ResetPubKeyRequest.build(testAccount1.getIdentity(), beforeAuthMap, params),
    new ICallback() {
        @Override
        public void onResponse(String txHash, Response response) {
            System.out.println("async reset pubkey, txHash:" + txHash + ", result: " + response.getErrorCode());
        }
    });

ResetPubKeyRequest

公開鍵のリセットに必要なパラメーター。

名前 タイプ 説明
acctId Identity リセットするアカウント ID 。
mychainParams MychainParams 共通パラメーター

重みの更新

updateAuthMap

この同期操作を呼び出して、重みを更新できます。

  • 関数
public MychainBase<ReplyTransactionReceipt> updateAuthMap(UpdateAuthMapRequest request)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true UpdateAuthMapRequest 重みを更新するためのリクエスト。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();


// authmap を更新する
MychainBase<ReplyTransactionReceipt> response = sdk.getAccountService().updateAuthMap(
    UpdateAuthMapRequest.build(testAccount1.getIdentity(), beforeAuthMap, params));

asyncUpdateAuthMap

この非同期操作を呼び出して、重みを更新できます。

  • 関数
public MychainBase<Response> asyncUpdateAuthMap(UpdateAuthMapRequest request,ICallback callback)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true UpdateAuthMapRequest 重みを更新するためのリクエスト。
callback true ICallback コールバック関数。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();


AuthMap beforeAuthMap = sdk.getQueryService()
 .queryAccount(testAccount1.getIdentity().hexStrValue()).getData().getAccount().getAuthMap();

for (Map.Entry<String, Integer> entry : beforeAuthMap.getAuthMap().entrySet()) {
    beforeAuthMap.updateAuth(entry.getKey(), entry.getValue() + 10);
}

MychainBase<Response> result = sdk.getAccountService().asyncUpdateAuthMap(
    UpdateAuthMapRequest.build(testAccount1.getIdentity(), beforeAuthMap, params),
    new ICallback() {
        @Override
        public void onResponse(String txHash, Response response) {
            System.out.println("async update auth map, txHash:" + txHash + ", result: "  + response.getErrorCode());
        }
    });

UpdateAuthMapRequest

重みの更新に必要なパラメーター:

名前 タイプ 説明
acctId Identity 構成するアカウント ID 。
authMap AuthMap 新しい重み。
mychainParams MychainParams 共通パラメーター

アカウントの凍結

freezeAccount

この同期操作を呼び出して、アカウントを凍結できます。

  • 関数
public MychainBase<ReplyTransactionReceipt> freezeAccount(FreezeAccountRequest request)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true FreezeAccountRequest アカウントを凍結するためのリクエスト。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();


// アカウントを凍結する
MychainBase<ReplyTransactionReceipt> result = sdk.getAccountService().freezeAccount(
    FreezeAccountRequest.build(adminAccount.getIdentity(), testAccount1.getIdentity(),
        params))

asyncFreezeAccount

この非同期操作を呼び出して、アカウントを凍結できます。

  • 関数
public MychainBase<Response> asyncFreezeAccount(FreezeAccountRequest request,ICallback callback)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true FreezeAccountRequest アカウントを凍結するためのリクエスト。
callback true ICallback コールバック関数。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();


// アカウントを非同期で凍結する
MychainBase<Response> result = sdk.getAccountService().asyncFreezeAccount(
    FreezeAccountRequest.build(adminAccount.getIdentity(), testAccount1.getIdentity(),
        params), new ICallback() {
        @Override
        public void onResponse(String txHash, Response response) {
            assertNotNull(txHash);
            assertTrue(response.getErrorCode().isSuccess());
        }
    });

FreezeAccountRequest

アカウント凍結リクエストに必要なパラメーター:

名前 タイプ 説明
from Identity アカウントを凍結するユーザーの ID 。
to Identity 凍結するアカウント ID 。
mychainParams MychainParams 共通パラメーター

アカウントの凍結解除

unFreezeAccount

この同期操作を呼び出して、アカウントの凍結を解除できます。

  • 関数
public MychainBase<ReplyTransactionReceipt> unFreezeAccount(UnfreezeAccountRequest request)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true UnfreezeAccountRequest アカウントの凍結を解除するためのリクエスト。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase<ReplyTransactionReceipt> MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();


// アカウントの凍結を解除する
MychainBase<ReplyTransactionReceipt> result2 = sdk.getAccountService()
    .unFreezeAccount(
        UnfreezeAccountRequest.build(adminAccount.getIdentity(),
            testAccount1.getIdentity(), params));

asyncUnFreezeAccount

この非同期操作を呼び出して、アカウントの凍結を解除できます。

  • 関数
public MychainBase<Response> asyncUnFreezeAccount(UnfreezeAccountRequest request,ICallback callback)
  • リクエストパラメーター
名前 必須 タイプ 説明
request true UnfreezeAccountRequest アカウント凍結解除リクエスト。
callback true ICallback コールバック関数。
  • レスポンスフィールド
レスポンスフィールド フィールドタイプ 説明
result MychainBase MychainBaseResult には response タイプが含まれています。
//  params をビルドする
MychainParams params = new MychainParams.Builder()
  .gas(BigInteger.valueOf(40000))
  .privateKeyList(adminPrivateKeys)
  .build();


// アカウントの凍結を非同期で解除する
MychainBase<Response> result2 = sdk.getAccountService().asyncUnFreezeAccount(
    UnfreezeAccountRequest.build(adminAccount.getIdentity(), testAccount1.getIdentity(),
        params), new ICallback() {
        @Override
        public void onResponse(String txHash, Response response) {
            assertNotNull(txHash);
            assertTrue(response.getErrorCode().isSuccess());
        }
    });

UnfreezeAccountRequest

アカウント凍結解除リクエストに必要なパラメーター:

名前 タイプ 説明
from Identity アカウントの凍結を解除するユーザーのアカウント ID 。
to Identity 凍結を解除するアカウントの ID 。
mychainParams MychainParams 共通パラメーター