You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
hi
i want to create jwe same as this image
this is my php code
<?php
require 'vendor/autoload.php';
use Jose\Component\Core\JWK;
use Jose\Component\Encryption\Algorithm\KeyEncryption\ECDHESA256KW;
use Jose\Component\Encryption\Algorithm\ContentEncryption\A256GCM;
use Jose\Component\Encryption\Compression\CompressionMethodManager;
use Jose\Component\Encryption\JWEBuilder;
use Jose\Component\Core\AlgorithmManager;
use Jose\Component\KeyManagement\JWKFactory;
$privateKey = <<<EOD
-----BEGIN EC PRIVATE KEY-----
MIHcAgEBBEIBVJmxxvH8Kp2bKVZHzr9W576vdSxnPdnk7X5+Cb53gQXJIS53IaoZ
8W7JIB2BJTgBGqa8WC5X8tX32SEgjF6YuxugBwYFK4EEACOhgYkDgYYABABDpgDm
15S3O/PywiKeW0LN1gu05xqJB3huWt+5qQxK16mwkAWQTmofW8+FBKEM9jzOUW/3
SStW90PMcXBtxpT0FAF5Kjq5LkIjAW9NIbQtr+PGS5HYBEBKcmCiFa1hA5hRyM97
y/XzZx+EZsDmBdL7p9sQkNb/MVexHr3eoH19VZrb7g==
-----END EC PRIVATE KEY-----
EOD;
// Define the payload
$payload = [
'data' => 'eyJhbGciOiJFUzUxMiIsImNsaWVudElEIjoiYzVkNzhmMTAtMmY3NS00ZmM5LWE2ZTAtNmQ0YzViNWM0ZTU5In0.eyJwYXRoIjoiL3NlcnZpY2UxIiwiZGF0YSI6IntcclxuICAgIFwicmVxdWVzdElkXCI6IFwiMTIzNDU2Nzg5MFwiXHJcbn0iLCJtZXRob2QiOiJQT1NUIiwiaWF0IjoxNzMxNTc1NjEyfQ.AQZoZJSi75hHyQDGc6zQMn05yWe9pdA-BNRgUfLwWXmM_6LNrbLuANeXTkJvJfmMCwCvAoNSOVefvKHyrnjv6P9yAV05RRHIgl6vtpNruYGFXdVfQaYygIDeUhbZlv_l4ETmfmxwhMWr9POxMmmokuIloNoNzy86W3lfA0TZIKLwOmzU',
'iat' => 1731575612,
];
$publicKeyPem = <<<EOD
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEtB7W2BLDBSjJv1danzZeOjQGhCOe
u3u/JIIVXFrdbfi3vi7t+EQJY5H7df1YcO0tu9LstL260DJba72IQQZDCg==
-----END PUBLIC KEY-----
EOD;
$recipientPublicKeyJWK = JWKFactory::createFromKey($publicKeyPem);
// Set up algorithms
$keyEncryptionAlgorithmManager = new AlgorithmManager([new ECDHESA256KW()]);
$contentEncryptionAlgorithmManager = new AlgorithmManager([new A256GCM()]);
$compressionMethodManager = new CompressionMethodManager([]); // No compression
// Initialize JWE Builder
$jweBuilder = new JWEBuilder(
$keyEncryptionAlgorithmManager,
$contentEncryptionAlgorithmManager
, $compressionMethodManager
);
// Build the JWE
$jwe = $jweBuilder
->create()
->withPayload(json_encode($payload))
->withSharedProtectedHeader([
'alg' => 'ECDH-ES+A256KW',
'enc' => 'A256GCM',
])
->addRecipient($recipientPublicKeyJWK)
->build();
but it say:
<html>
<body>
<!--StartFragment-->
( ! ) Fatal error: Uncaught RuntimeException: Unable to create the key in \php\vendor\web-token\jwt-framework\src\Component\Core\Util\ECKey.php on line 148
--
<br class="Apple-interchange-newline"><!--EndFragment-->
</body>
</html>
The text was updated successfully, but these errors were encountered:
Description
hi
i want to create jwe same as this image
this is my php code
but it say:
The text was updated successfully, but these errors were encountered: