Вы имеете в виду формат открытого ключа, используемый в сертификате?
Обычно открытый ключ в сертификате хранится в поле SubjectPublicKeyInfo (см. RFC 5280)
SubjectPublicKeyInfo ::= SEQUENCE {
algorithm AlgorithmIdentifier,
subjectPublicKey BIT STRING }
Особенности DSA можно найти в RFC 3370 . Обычно параметры AlgorithmIdentifier содержат экземпляр Dss-Parms, дающий вам p, k, g, а subjectPublicKey BIT STRING содержит открытый ключ y, закодированный как DER-кодированный INTEGER.
Относительно Base64: Строго говоря, сертификаты не закодированы в Base64, но используют его расширенную форму, формат PEM, простой текстовый формат, который является кодировкой Base64 сертификата X.509 (RFC5280) заключенный между строк
"-----BEGIN CERTIFICATE-----"
...
"-----END CERTIFICATE-----"
или
"-----BEGIN X509 CERTIFICATE----"
...
"-----END X509 CERTIFICATE----".
Сам сертификат является кодировкой DER структуры ASN.1, как описано в RFC 5280. Подробнее о DER (Правилах выделенного кодирования) см. X.690 .
Большинство сертификатов хранятся либо в формате PEM, либо непосредственно в необработанном виде в кодировке DER.