Difference between revisions of "LlGenerateKey/ja"

From Second Life Wiki
Jump to navigation Jump to search
m
m
Line 50: Line 50:
|cat1=Key
|cat1=Key
|cat2
|cat2
|history=*Inspired by the library function [[generateKey/ja]].
|history=*Inspired by the library function [[generateKey]].
*Changed from using [http://en.wikipedia.org/wiki/UUID#Version_3_.28MD5_hash.29 Version 3 (MD5 hash)] to [http://en.wikipedia.org/wiki/UUID#Version_5_.28SHA-1_hash.29 Version 5 (SHA-1 hash)]. Date of this change is unknown.
*Changed from using [http://en.wikipedia.org/wiki/UUID#Version_3_.28MD5_hash.29 Version 3 (MD5 hash)] to [http://en.wikipedia.org/wiki/UUID#Version_5_.28SHA-1_hash.29 Version 5 (SHA-1 hash)]. Date of this change is unknown.
}}{{LSLC{{#var:lang}}|Encryption|llGenerateKey}}
}}{{LSLC{{#var:lang}}|Encryption|llGenerateKey}}

Revision as of 12:14, 2 November 2023

要約

関数: key llGenerateKey( );

Generates a key using Version 5 (SHA-1 hash) UUID generation to create a unique key.
generated.を key で返します。

警告

  • The specific UUID version is an implementation detail that has changed in the past and may change again in the future. Do not depend upon the UUID that is returned to be Version 5.
  • As the UUID produced is versioned, it should never return a value of NULL_KEY.

サンプル

default
{
    touch_start(integer num_detected)
    {
        // avatar touching
        key avatarKey = llDetectedKey(0);
        string avatarName = llKey2Name(avatarKey);

        // key of the owner
        key owner = llGetOwner();

        // generated random key
        key random = llGenerateKey();

        // number of objects inside the same prim
        integer numberOfObjects = llGetInventoryNumber(INVENTORY_OBJECT);

        if (numberOfObjects)
        {
            // name of first object sorted by name inside the prim's inventory
            string itemName = llGetInventoryName(INVENTORY_OBJECT, 0);
    
            llGiveInventory(avatarKey, itemName);
            llInstantMessage(avatarKey, "Your transaction key is '" + (string)random + "'.");
    
            llInstantMessage(owner, "Transaction record:\n"
                + "receiver: " + avatarName + " (" + (string)avatarKey + ")\n"
                + "item: " + itemName + "\n"
                + "transaction key: " + (string)random);
        }
        else
        {
            // PUBLIC_CHANNEL has the integer value 0
            llSay(PUBLIC_CHANNEL, "No items to give away, sorry!");
        }
    }
}

特記事項

経緯

Search JIRA for related Issues

Signature

function key llGenerateKey();
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。