MACsec RX Secure Channel Configuration
Description
The description of the port’s RX SC.
Corresponding low-level API class: P_MACSEC_RXSC_DESCR
await rxsc_obj.config.description.set(description="RX SC Description")
resp = await rxsc_obj.config.description.get()
resp.description
SCI Value
The SCI of the port’s RX SC.
Corresponding low-level API class: P_MACSEC_RXSC_SCI
await rxsc_obj.config.sci.set(sci=Hex("0102030405060002"))
resp = await rxsc_obj.config.sci.get()
resp.sci
Confidentiality Offset
The confidentiality offset of the port’s RX SC.
Corresponding low-level API class: P_MACSEC_RXSC_CONF_OFFSET
await rxsc_obj.config.confidentiality_offset.set(offset=0)
resp = await rxsc_obj.config.confidentiality_offset.get()
resp.offset
Cipher Suite
The cipher suite of the port’s RX SC.
Corresponding low-level API class: P_MACSEC_RXSC_CIPHERSUITE
await rxsc_obj.config.cipher_suite.set(cipher_suite=enums.MACSecCipherSuite.GCM_AES_128)
await rxsc_obj.config.cipher_suite.set(cipher_suite=enums.MACSecCipherSuite.GCM_AES_256)
await rxsc_obj.config.cipher_suite.set(cipher_suite=enums.MACSecCipherSuite.GCM_AES_XPN_128)
await rxsc_obj.config.cipher_suite.set(cipher_suite=enums.MACSecCipherSuite.GCM_AES_XPN_256)
resp = await rxsc_obj.config.cipher_suite.get()
resp.cipher_suite
Starting Packet Number
The first PN number that the port’s RX SC expectes to receive.
Corresponding low-level API class: P_MACSEC_RXSC_STARTING_PN
await rxsc_obj.config.starting_pn.set(value=10)
resp = await rxsc_obj.config.starting_pn.get()
resp.value
Test Payload ID
Associate a TPLD ID with the RX SC.
Corresponding low-level API class: P_MACSEC_RXSC_TPLDID
await rxsc_obj.config.tpld_id.set(tpld_id=0)
resp = await rxsc_obj.config.tpld_id.get()
resp.tpld_id
SAK Key Value
Configure the value of a SAK key on the port’s RX SC.
The number and values of SAK keys depend on the cipher suite used.
Corresponding low-level API class: P_MACSEC_RXSC_SAK_VALUE
# For GCM_AES_128 and GCM_AES_128_XPN
await rxsc_obj.access_sak_value(0).set(sak_key_value=Hex("00010203040506070001020304050607"))
await rxsc_obj.access_sak_value(1).set(sak_key_value=Hex("00010203040506070001020304050607"))
await rxsc_obj.access_sak_value(2).set(sak_key_value=Hex("00010203040506070001020304050607"))
await rxsc_obj.access_sak_value(3).set(sak_key_value=Hex("00010203040506070001020304050607"))
# For GCM_AES_256 and GCM_AES_256_XPN
await rxsc_obj.access_sak_value(0).set(sak_key_value=Hex("0001020304050607000102030405060700010203040506070001020304050607"))
await rxsc_obj.access_sak_value(1).set(sak_key_value=Hex("0001020304050607000102030405060700010203040506070001020304050607"))
XPN SSCI Value
The XPN SSCI of the port’s RX SC.
Corresponding low-level API class: P_MACSEC_RXSC_XPN_SSCI
await rxsc_obj.config.xpn_ssci.set(sci=Hex("00000000"))
resp = await rxsc_obj.config.xpn_ssci.get()
resp.ssci
XPN Salt Value
The XPN Salt of the port’s RX SC.
Corresponding low-level API class: P_MACSEC_RXSC_XPN_SALT
await rxsc_obj.config.xpn_salt.set(sci=Hex("000000000000000000000000"))
resp = await rxsc_obj.config.xpn_salt.get()
resp.salt