|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.objectweb.proactive.ext.security.InternalBodySecurity
public class InternalBodySecurity
This class is enabled when the body is a forwarder. It acts like a forwarder for all security related messages
| Field Summary | |
|---|---|
protected SecurityEntity |
distantBody
|
| Constructor Summary | |
|---|---|
InternalBodySecurity(UniversalBody distantBody)
|
|
| Method Summary | |
|---|---|
java.security.cert.X509Certificate |
getCertificate()
entity certificate |
byte[] |
getCertificateEncoded()
Entity's X509Certificate as byte array |
byte[] |
getCertificatEncoded()
|
UniversalBody |
getDistantBody()
|
java.util.ArrayList<Entity> |
getEntities()
Retrieves all the entity's ID which contain this entity plus this entity ID. |
SecurityContext |
getPolicy(SecurityContext securityContext)
Ask the entity to fill the securityContext parameters with its own policy according to the communication details contained in the given securityContext |
java.security.PublicKey |
getPublicKey()
entity public key |
boolean |
isLocalBody()
|
byte[][] |
publicKeyExchange(long sessionID,
byte[] myPublicKey,
byte[] myCertificate,
byte[] signature)
exchange entity certificate and/or public key if certificate are not available |
byte[] |
randomValue(long sessionID,
byte[] clientRandomValue)
Exchange random value between client and server entity |
byte[][] |
secretKeyExchange(long sessionID,
byte[] encodedAESKey,
byte[] encodedIVParameters,
byte[] encodedClientMacKey,
byte[] encodedLockData,
byte[] parametersSignature)
this method sends encoded secret parameters to the target entity |
void |
setDistantBody(UniversalBody distantBody)
|
long |
startNewSession(Communication policy)
start an unvalidated empty session |
void |
terminateSession(long sessionID)
terminate a given session |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected SecurityEntity distantBody
| Constructor Detail |
|---|
public InternalBodySecurity(UniversalBody distantBody)
| Method Detail |
|---|
public void terminateSession(long sessionID)
throws SecurityNotAvailableException,
java.io.IOException
SecurityEntity
terminateSession in interface SecurityEntitySecurityNotAvailableException - id security is not available
java.io.IOException
public java.security.cert.X509Certificate getCertificate()
throws SecurityNotAvailableException,
java.io.IOException
SecurityEntity
getCertificate in interface SecurityEntitySecurityNotAvailableException - if security is not available
java.io.IOException - if communication fails
public long startNewSession(Communication policy)
throws SecurityNotAvailableException,
RenegotiateSessionException,
java.io.IOException
SecurityEntity
startNewSession in interface SecurityEntitypolicy - policy associated to the session
SecurityNotAvailableException - if security is not available
RenegotiateSessionException - if the session immediatly expires
java.io.IOException
public java.security.PublicKey getPublicKey()
throws SecurityNotAvailableException,
java.io.IOException
SecurityEntity
getPublicKey in interface SecurityEntitySecurityNotAvailableException
java.io.IOException
public byte[] randomValue(long sessionID,
byte[] clientRandomValue)
throws SecurityNotAvailableException,
RenegotiateSessionException,
java.io.IOException
SecurityEntity
randomValue in interface SecurityEntitysessionID - the session IDclientRandomValue - client random value
SecurityNotAvailableException - if the security is not available
RenegotiateSessionException - if the session has expired
java.io.IOException
public byte[][] publicKeyExchange(long sessionID,
byte[] myPublicKey,
byte[] myCertificate,
byte[] signature)
throws SecurityNotAvailableException,
RenegotiateSessionException,
KeyExchangeException,
java.io.IOException
SecurityEntity
publicKeyExchange in interface SecurityEntitysessionID - the session IDmyPublicKey - encoded public keymyCertificate - encoded certificatesignature - encoded signature of previous paramaters
SecurityNotAvailableException - if the security is not available
RenegotiateSessionException - if the session has expired
KeyExchangeException - if a key data/length/algorithm is not supported
java.io.IOException
public byte[][] secretKeyExchange(long sessionID,
byte[] encodedAESKey,
byte[] encodedIVParameters,
byte[] encodedClientMacKey,
byte[] encodedLockData,
byte[] parametersSignature)
throws SecurityNotAvailableException,
RenegotiateSessionException,
java.io.IOException
SecurityEntity
secretKeyExchange in interface SecurityEntitysessionID - session IDencodedAESKey - the AES key use to exchange secret messageencodedIVParameters - Initilization parameters for the AES keyencodedClientMacKey - MAC key for checking signature of future messagesencodedLockData - random value to prevent message replays by an external attackerparametersSignature - encoded signature of the previous parameters
SecurityNotAvailableException - if this entity does not support security
RenegotiateSessionException - if the session has expired or has been cancelled during this exchange
java.io.IOException - if communication failspublic void setDistantBody(UniversalBody distantBody)
public boolean isLocalBody()
public UniversalBody getDistantBody()
public byte[] getCertificatEncoded()
throws SecurityNotAvailableException,
java.io.IOException
SecurityNotAvailableException
java.io.IOException
public SecurityContext getPolicy(SecurityContext securityContext)
throws SecurityNotAvailableException,
java.io.IOException
SecurityEntity
getPolicy in interface SecurityEntitysecurityContext -
SecurityNotAvailableException - thrown the entity doest not support the security
java.io.IOException
public java.util.ArrayList<Entity> getEntities()
throws SecurityNotAvailableException,
java.io.IOException
SecurityEntity
getEntities in interface SecurityEntitySecurityNotAvailableException - if the target entity does not support security
java.io.IOException
public byte[] getCertificateEncoded()
throws SecurityNotAvailableException,
java.io.IOException
SecurityEntity
getCertificateEncoded in interface SecurityEntitySecurityNotAvailableException
java.io.IOException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||