public function addBinaryToken($cert, $isPEMFormat = true, $isDSig = true) { $security = $this->locateSecurityHeader(); $data = XMLSecurityDSig::get509XCert($cert, $isPEMFormat); $token = $this->soapDoc->createElementNS(self::WSSENS, self::WSSEPFX . ':BinarySecurityToken', $data); $security->insertBefore($token, $security->firstChild); $token->setAttribute('EncodingType', 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary'); $token->setAttributeNS(self::WSUNS, self::WSUPFX . ':Id', XMLSecurityDSig::generateGUID()); $token->setAttribute('ValueType', 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3'); return $token; }