שלב 1: הגדרת ארגז החול

ארגז החול הוא סביבת בדיקה של שירות הזהות של Google Wallet. הוא משתמש במזהי בדיקה במקום במזהים אמיתיים, כדי שתוכלו ליצור את השילוב ולנפות בו באגים בלי לגעת בנתוני הייצור.

כברירת מחדל, Google Wallet פועל במצב ייצור עם תעודות REAL ID. בשלב הזה, מעבירים מכשיר בדיקה למצב ארגז חול ומגדירים את השרת לבקשות ולתגובות של ארגז החול.

השלבים בדף הזה

לפני שמתחילים

שלב א': מבקשים גישה לסביבת ה-Sandbox של חשבון הבדיקה

האפשרות לעבור בין ארגז החול לסביבת הייצור מוסתרת כברירת מחדל. כדי להפעיל את המתג במכשיר הבדיקה, צריך להוסיף את חשבון Google לרשימת ההיתרים של ארגז החול:

  1. ממלאים את טופס הבקשה לגישה לסביבת ה-Sandbox של Google Pay באמצעות חשבון Google שבו אתם משתמשים ב-Google Wallet.
  2. אם אתם מבצעים בדיקה ממדינה או מאזור שבהם עדיין לא הושקו תעודות מזהות דיגיטליות באופן רשמי, אתם צריכים גם לשלוח אימייל לכתובת wallet-identity-rp-support@google.com עם כתובות ה-Gmail של חשבונות הבדיקה שלכם.

שלב ב': מעבירים את המכשיר למצב ארגז חול (sandbox)

  1. פותחים את אפליקציית ההגדרות במכשיר הבדיקה עם Android.
  2. לוחצים על חשבון Google / תמונת הפרופיל בחלק העליון של המסך (מוצגים שם השם שלכם ו "שירותי Google והעדפות").
  3. אם מוצגת בקשה, בוחרים את הפרופיל ולוחצים על כל השירותים.
  4. עוברים לקטגוריה אחר ולוחצים על סביבת TapAndPay. אם האפשרות TapAndPay Environment לא מופיעה, מפעילים מחדש את המכשיר ומתחילים שוב משלב 1. אם הוא עדיין לא מופיע, צריך לוודא שהחשבון נמצא ברשימת ההיתרים של ארגז החול (שלב א').
  5. לוחצים על התפריט הנפתח ובוחרים באפשרות SANDBOX.

    בורר הסביבה של TapAndPay

  6. תופיע תיבת דו-שיח שמודיעה שהסביבה השתנתה. לוחצים על אישור ומפעילים מחדש את המכשיר.

    צילום מסך של אישור שינוי הסביבה

  7. אחרי ההפעלה מחדש, פותחים את Google Wallet. אם מופיעה תיבת הדו-שיח הבאה, צריך לסגור את Google Wallet באופן ידני ולפתוח אותה מחדש כדי שהיא תסתנכרן עם סביבת ה-sandbox:

    תיבת דו-שיח לסגירה ידנית של Google Wallet

שלב ג': מוודאים שהמכשיר נמצא במצב ארגז חול (sandbox)

  1. פותחים את אפליקציית Google Wallet .
  2. בפינה השמאלית העליונה, לוחצים על תמונת הפרופיל או על סמל החשבון > ההגדרות של Wallet.
  3. עוברים אל תחתית הדף. אם מופיעה הודעת האישור SANDBOX, המכשיר מוגדר לשיחות בארגז חול. אם לא מופיעה הודעה, הוא במצב ייצור.
מצב ייצור
איור 1: מצב ייצור
מצב ארגז חול (sandbox)
איור 2: מצב ארגז חול (sandbox)

במכשירים מסוימים, Google Wallet לא מופיע בהגדרות Google. כדי לפתוח את ההגדרות של Google Wallet במכשירים האלה, משתמשים ב-adb עם הפקודה הבאה:

adb shell am start -n com.google.android.gms/com.google.android.gms.tapandpay.settings.TapAndPaySettingsActivity

חזרה לסביבת הייצור

חוזרים על שלב ב', אבל בוחרים באפשרות PRODUCTION במקום SANDBOX.

מכשירי Wear OS

כדי להפעיל את מצב ארגז החול במכשיר Wear OS מחובר, מוסיפים קובץ ריק ומפעילים מחדש:

adb shell touch /sdcard/Download/android_pay_env_override_sandbox
adb reboot

כדי לחזור למצב ייצור, מוחקים את הקובץ ומפעילים מחדש:

adb shell rm /sdcard/Download/android_pay_env_override_sandbox
adb reboot

שלב ד': הגדרת השרת לארגז החול (sandbox)

הגדרת ארגז חול דו-כיוונית שבה מוצגות בקשות OpenID4VP חתומות יוצאות ואימות פרטי כניסה נכנסים לבדיקה של Utopia

בארגז החול, השרת צריך שני דברים:

  1. מבקשים פרטי כניסה לחתימה שארגז החול של Google Wallet נותן בהם אמון:
    • גורמים מסתמכים: משתמשים בזוג מפתחות לבדיקה בארגז החול (sandbox) ש-Google נותנת בו אמון מראש, ובמטא-נתונים לדוגמה הבאים. אתם לא צריכים לשלוח טופס.
    • רשמים מאמתים: חותמים על בקשות באמצעות אישור קצה שהונפק על ידי רשות אישורי הבסיס שלכם בארגז החול (אחרי ש-Google מוסיפה אותו למאגר האישורים של ארגז החול), ויוצרים gw_rp_metadata_bytes משלכם כמו שמתואר בשלב 3א: הגדרת פרופיל אישור ה-CA ומטא-נתונים של CBOR.
  2. ישות עוגן אמינה לאימות התגובה: גם הגורמים המסתמכים וגם הרשמים המאמתים צריכים להוסיף את האישור של Utopia Sandbox למאגר האישורים של השרת שלהם כדי לאמת תגובות ממזהה בדיקה של ארגז החול.

מפתחות ומטא-נתונים לבדיקה בארגז חול (גורמים מסתמכים)

כדי לבדוק בקשות חתומות בסביבת Sandbox בלי לרשום מפתחות ייצור משלכם, אתם יכולים להשתמש בזוג מפתחות הבדיקה הבא. המפתחות האלה מהימנים מראש בסביבת ארגז החול.

הוראות

  1. משתמשים במפתח הפרטי לבדיקה כדי לחתום על הבקשה (JWS).
  2. מטמיעים את האישור הציבורי לבדיקה בכותרת x5c של הבקשה.
  3. מגדירים את client_id בתור x509_hash של האישור הזה. בקטע בקשות חתומות מוסבר איך לחשב את ה-hash.
  4. מגדירים את gw_rp_metadata_bytes ב-client_metadata למטא-נתונים הבאים של הצד המסתמך לבדיקה (Base64url CBOR).

מפתח פרטי (PEM):

-----BEGIN PRIVATE KEY-----
MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggRmIZIHQhXcYIeZ7
KSqS/WwJrsOetdI8ZE4HG0fd+3uhRANCAAR3GR6mdt/NOErO7+XtKqo7orgXWPMI
jEQDeE1PP4KWXTBAhuewPvF8uOiYakz5Jqd1kEFKfiecZEZRrLnC7U+e
-----END PRIVATE KEY-----

מטא-נתונים של הצד המסתמך (Base64url CBOR):

2BhY56Juc2NoZW1hX3ZlcnNpb25idjFnZGlzcGxheaNsZGlzcGxheV9uYW1leBhURVNUIFVTRSBPTkxZIFNhbmRib3ggUlBobG9nb191cml4YWh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3Byb2R1Y3Rsb2dvcy9nb29nbGVnL3Y2L3dlYi02NGRwL2xvZ29fZ29vZ2xlZ19jb2xvcl8xeF93ZWJfNjRkcC5wbmdycHJpdmFjeV9wb2xpY3lfdXJpeCNodHRwczovL3BvbGljaWVzLmdvb2dsZS5jb20vcHJpdmFjeQ

מטא-נתונים של הצד המסתמך (הטלת CBOR):

#24# .bstr

{
  "schema_version": "v1",
  "display": {
    "display_name": "TEST USE ONLY Sandbox RP",
    "logo_uri": "https://fonts.gstatic.com/s/i/productlogos/googleg/v6/web-64dp/logo_googleg_color_1x_web_64dp.png",
    "privacy_policy_uri": "https://policies.google.com/privacy"
  }
}

אישור ציבורי (PEM):

Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number:
            97:99:aa:8b:09:93:5a:20:c1:8b:27:6c:e2:da:91:97:f2:b7:79:8d
        Signature Algorithm: ecdsa-with-SHA256
        Issuer: O=Google, OU=Wallet, CN=TEST USE ONLY Sandbox RP
        Validity
            Not Before: Jun  2 00:39:54 2026 GMT
            Not After : Jun  2 00:39:54 2027 GMT
        Subject: O=Google, OU=Wallet, CN=TEST USE ONLY Sandbox RP
        Subject Public Key Info:
            Public Key Algorithm: id-ecPublicKey
                Public-Key: (256 bit)
                pub:
                    04:77:19:1e:a6:76:df:cd:38:4a:ce:ef:e5:ed:2a:
                    aa:3b:a2:b8:17:58:f3:08:8c:44:03:78:4d:4f:3f:
                    82:96:5d:30:40:86:e7:b0:3e:f1:7c:b8:e8:98:6a:
                    4c:f9:26:a7:75:90:41:4a:7e:27:9c:64:46:51:ac:
                    b9:c2:ed:4f:9e
                ASN1 OID: prime256v1
                NIST CURVE: P-256
        X509v3 extensions:
            X509v3 Subject Key Identifier:
                29:CA:DA:07:9B:1F:68:FA:80:01:E1:68:E3:38:E8:5A:5C:28:B1:6A
            X509v3 Authority Key Identifier:
                29:CA:DA:07:9B:1F:68:FA:80:01:E1:68:E3:38:E8:5A:5C:28:B1:6A
            X509v3 Basic Constraints: critical
                CA:TRUE
            1.3.6.1.4.1.11129.10.1:
                . ...?..!H.Z\j...uT2. .u.:.O.... 0
    Signature Algorithm: ecdsa-with-SHA256
    Signature Value:
        30:46:02:21:00:91:94:fa:b9:85:82:92:bd:6a:98:44:73:ec:
        30:26:1f:92:01:8f:5b:06:d7:8f:21:34:dc:76:f0:89:3c:04:
        8c:02:21:00:ae:3e:9d:46:99:bd:63:7a:cc:59:30:66:48:d0:
        75:cc:c9:82:07:ca:39:f1:f0:df:2b:07:7b:32:b9:5b:3f:0a

-----BEGIN CERTIFICATE-----
MIICFDCCAbmgAwIBAgIVAJeZqosJk1ogwYsnbOLakZfyt3mNMAoGCCqGSM49BAMC
MEUxDzANBgNVBAoMBkdvb2dsZTEPMA0GA1UECwwGV2FsbGV0MSEwHwYDVQQDDBhU
RVNUIFVTRSBPTkxZIFNhbmRib3ggUlAwHhcNMjYwNjAyMDAzOTU0WhcNMjcwNjAy
MDAzOTU0WjBFMQ8wDQYDVQQKDAZHb29nbGUxDzANBgNVBAsMBldhbGxldDEhMB8G
A1UEAwwYVEVTVCBVU0UgT05MWSBTYW5kYm94IFJQMFkwEwYHKoZIzj0CAQYIKoZI
zj0DAQcDQgAEdxkepnbfzThKzu/l7SqqO6K4F1jzCIxEA3hNTz+Cll0wQIbnsD7x
fLjomGpM+SandZBBSn4nnGRGUay5wu1PnqOBhTCBgjAdBgNVHQ4EFgQUKcraB5sf
aPqAAeFo4zjoWlwosWowHwYDVR0jBBgwFoAUKcraB5sfaPqAAeFo4zjoWlwosWow
DwYDVR0TAQH/BAUwAwEB/zAvBgkrBgEEAdZ5CgEEIgQg5taUP70bIUiJWlxqkwYP
dVQyoyCvdaw62E8u4ASBIDAwCgYIKoZIzj0EAwIDSQAwRgIhAJGU+rmFgpK9aphE
c+wwJh+SAY9bBtePITTcdvCJPASMAiEArj6dRpm9Y3rMWTBmSNB1zMmCB8o58fDf
Kwd7MrlbPwo=
-----END CERTIFICATE-----

אישור בסיס של IACA בארגז חול (כל השותפים)

מזהי הבדיקה שמוקצים בארגז החול נחתמים על ידי רשות ההנפקה של ארגז החול של Google‏ (Utopia). כדי לאמת באופן קריפטוגרפי את החתימה של issuerAuth בתשובות שמוחזרות ממסמכי זיהוי לבדיקה בארגז חול, צריך להוסיף את אישור הבסיס הזה למאגר האישורים של המאמת (אין לתת בו אמון בסביבת הייצור):

סביבה המנפיק / המדינה סוג פרטי הכניסה אישור הבסיס של IACA
ארגז חול Utopia מסמכי זיהוי (com.google.wallet.idcard.1) הורדת האישור של Utopia Sandbox

כאן מפורטים אישורי הבסיס של IACA בסביבת הייצור במדינות בארה "ב ובמדינות אחרות שבהן יש תמיכה.

זמן פעולה תקינה של ארגז החול

בסביבת ארגז החול אין הסכמי SLA לגבי זמן פעולה תקינה כמו בסביבת הייצור. אם נתקלתם בשגיאה שלדעתכם קשורה להפסקה זמנית בפעילות של ארגז החול, המתינו יום עסקים אחד בארצות הברית לפני שתיצרו איתנו קשר. בדרך כלל, הפסקות בשירות נפתרות בפרק הזמן הזה. בגלל האפשרות לזמן השבתה, אל תתכננו תהליכי הפצה קריטיים שתלויים בסביבת ארגז החול.

השלב הבא

שלב 2: יוצרים מזהה בדיקה →