1 page.title=Configurao de segurana de rede 2 page.keywords=androidn,security,network 3 page.image=images/cards/card-nyc_2x.jpg 4 5 @jd:body 6 7 <div id="tb-wrapper"> 8 <div id="tb"> 9 10 <h2>Neste documento</h2> 11 <ol> 12 <li><a href="#manifest">Adicionar um arquivo de configuraes de segurana</a></li> 13 <li><a href="#CustomTrust">Personalizar CAs confiveis</a> 14 <ol> 15 <li><a href="#ConfigCustom">Configurar uma CA personalizada confivel</a></li> 16 <li><a href="#LimitingCas">Limitar o conjunto de CAs confiveis</a></li> 17 <li><a href="#TrustingAdditionalCas">Confiar em CAs adicionais</a></li> 18 </ol> 19 </li> 20 <li><a href="#TrustingDebugCa">CAs somente de depurao</a></li> 21 <li><a href="#UsesCleartextTraffic">Cancelar uso de trfego de texto simples</a></li> 22 <li><a href="#CertificatePinning">Fixar certificados</a></li> 23 <li><a href="#ConfigInheritance">Comportamento de herana de configurao</a></li> 24 <li><a href="#FileFormat">Formato do arquivo de configuraes</a></li> 25 </ol> 26 </div> 27 </div> 28 29 30 <p> 31 O Android N inclui um recurso de configuraes de segurana de rede 32 que permite que os aplicativos personalizem as configuraes de segurana de rede em um arquivo de configuraes declarativo e seguro 33 sem modificar o cdigo do aplicativo. Essas configuraes podem 34 ser definidas para domnios especficos e para um aplicativo especfico. Os principais 35 recursos so: 36 </p> 37 38 <ul> 39 <li> 40 <b>ncoras de confiana personalizadas:</b> personalize quais autoridades de certificado (CA) 41 so confiveis para as conexes seguras de um aplicativo. Por 42 exemplo, confiar em certificados autoassinados privados ou restringir 43 o conjunto de CAs pblicas nas quais o aplicativo confia. 44 </li> 45 46 <li> 47 <b>Substituies somente de depurao:</b> depure conexes seguras do aplicativo com segurana, 48 sem adicionar riscos base instalada. 49 </li> 50 51 <li> 52 <b>Cancelar uso de trfego de texto simples:</b> proteja aplicativos contra 53 o uso acidental de trfego de texto simples. 54 </li> 55 56 <li> 57 <b>Fixar certificados:</b> restrinja a conexo segura de um aplicativo 58 a certificados especficos. 59 </li> 60 </ul> 61 62 63 <h2 id="manifest">Adicionar um arquivo de configuraes de segurana</h2> 64 65 <p> 66 O recurso de configuraes de segurana de rede usa um arquivo XML no qual voc especifica 67 as configuraes do seu aplicativo. Inclua uma entrada no manifesto do seu 68 aplicativo para apontar para esse arquivo. Este trecho de cdigo de um manifesto 69 demonstra como criar essa entrada: 70 </p> 71 72 <pre> 73 <?xml version="1.0" encoding="utf-8"?> 74 <manifest ... > 75 <application ... > 76 <meta-data android:name="android.security.net.config" 77 android:resource="@xml/network_security_config" /> 78 ... 79 </application> 80 </manifest> 81 </pre> 82 83 <h2 id="CustomTrust">Personalizar CAs confiveis</h2> 84 85 <p> 86 Um aplicativo pode querer confiar em um conjunto personalizado de CAs em vez de no padro 87 da plataforma. Os motivos mais comuns para isso so: 88 </p> 89 90 <ul> 91 <li>Conectar-se a um host com uma autoridade de certificado personalizada (autoassinada, 92 emitida por uma CA corporativa interna etc.). 93 </li> 94 95 <li>Limitar o conjunto de CAs para apenas aquelas nas quais voc confia em vez de todas 96 as CAs pr-instaladas. 97 </li> 98 99 <li>Confiar em CAs adicionais no includas no sistema. 100 </li> 101 </ul> 102 103 <p> 104 Por padro, conexes seguras (por exemplo, TLS, HTTPS) de todos os aplicativos confiam 105 nas CAs pr-instaladas do sistema e os aplicativos direcionados ao nvel da API 23 106 (Android M) e inferior tambm confiam no repositrio de CAs adicionadas pelo usurio por padro. Um 107 aplicativo pode personalizar as prprias conexes usando {@code base-config} (para 108 personalizao em todo o aplicativo) ou {@code domain-config} (para personalizao 109 por domnio). 110 </p> 111 112 113 <h3 id="ConfigCustom">Configurar uma CA personalizada</h3> 114 115 <p> 116 Suponhamos que voc queira se conectar a um host que use um certificado SSL autoassinado 117 ou a um host cujo certificado SSL foi emitido por uma CA no pblica 118 na qual confia, como a CA interna da sua empresa. 119 </p> 120 121 <p> 122 <code>res/xml/network_security_config.xml</code>: 123 <pre> 124 <?xml version="1.0" encoding="utf-8"?> 125 <network-security-config> 126 <domain-config> 127 <domain includeSubdomains="true">example.com</domain> 128 <trust-anchors> 129 <certificates src="@raw/my_ca"/> 130 </trust-anchors> 131 </domain-config> 132 </network-security-config> 133 </pre> 134 </p> 135 136 <p> 137 Adicione o certificado da CA autoassinada ou no pblica em formato PEM ou DER em 138 {@code res/raw/my_ca}. 139 </p> 140 141 142 <h3 id="LimitingCas">Limitar o conjunto de CAs confiveis</h3> 143 144 <p> 145 Um aplicativo que no queira confiar em todas as CAs nas quais o sistema confia 146 pode especificar o prprio conjunto limitado de CAs confiveis. Isso protege o 147 aplicativo contra certificados fraudulentos emitidos por qualquer outra CA. 148 </p> 149 150 <p> 151 A configurao para limitar o conjunto de CAs confiveis semelhante a <a href="#TrustingACustomCa">confiar em uma CA personalizada</a> para um domnio especfico, mas 152 fornecendo vrias CAs no recurso. 153 </p> 154 155 <p> 156 <code>res/xml/network_security_config.xml</code>: 157 <pre> 158 <?xml version="1.0" encoding="utf-8"?> 159 <network-security-config> 160 <domain-config> 161 <domain includeSubdomains="true">secure.example.com</domain> 162 <domain includeSubdomains="true">cdn.example.com</domain> 163 <trust-anchors> 164 <certificates src="@raw/trusted_roots"/> 165 </trust-anchors> 166 </domain-config> 167 </network-security-config> 168 </pre> 169 </p> 170 171 <p> 172 Adicione as CAs confiveis em formato PEM ou DER em {@code res/raw/trusted_roots}. 173 Observe que, ao usar o formato PEM, o arquivo deve conter <em>somente</em> dados PEM, 174 sem texto adicional. Voc tambm pode fornecer vrios elementos 175 <a href="#certificates"><code><certificates></code></a> 176 em vez de um. 177 </p> 178 179 180 <h3 id="TrustingAdditionalCas"> 181 Confiar em CAs adicionais 182 </h3> 183 184 <p> 185 Um aplicativo pode querer confiar em CAs adicionais nas quais o sistema no confia. 186 Isso pode ocorrer se o sistema ainda no incluiu a CA ou se a CA 187 no atender aos requisitos de incluso no sistema Android. O 188 aplicativo pode fazer isso ao especificar vrias fontes de certificados para uma 189 configurao. 190 </p> 191 <p> 192 <code>res/xml/network_security_config.xml</code>: 193 <pre> 194 <?xml version="1.0" encoding="utf-8"?> 195 <network-security-config> 196 <base-config> 197 <trust-anchors> 198 <certificates src="@raw/extracas"/> 199 <certificates src="system"/> 200 </trust-anchors> 201 </base-config> 202 </network-security-config> 203 </pre> 204 </p> 205 206 207 <h2 id="TrustingDebugCa">Configurar CAs para depurao</h2> 208 209 <p> 210 Ao depurar um aplicativo conectado por HTTPS, voc pode querer 211 se conectar a um servidor de desenvolvimento local que no tenha o certificado SSL 212 do seu servidor de produo. Para fazer isso sem 213 modificar o cdigo do aplicativo, voc pode especificar CAs somente de depurao que 214 sejam confiveis <i>apenas</i> quando <a href="{@docRoot}guide/topics/manifest/application-element.html#debug"> 215 android:debuggable</a> 216 for {@code true} ao usar {@code debug-overrides}. Normalmente, IDEs e ferramentas de compilao 217 definem esse sinalizador automaticamente para compilaes de no lanamento. 218 </p> 219 220 <p> 221 Isso mais seguro do que o cdigo condicional normal, pois, como medida 222 de segurana, os repositrios do aplicativo no aceitam aplicativos marcados como 223 depurveis. 224 </p> 225 226 <p> 227 <code>res/xml/network_security_config.xml</code>: 228 <pre> 229 <?xml version="1.0" encoding="utf-8"?> 230 <network-security-config> 231 <debug-overrides> 232 <trust-anchors> 233 <certificates src="@raw/debug_cas"/> 234 </trust-anchors> 235 </debug-overrides> 236 </network-security-config> 237 </pre> 238 </p> 239 240 241 <h2 id="UsesCleartextTraffic">Cancelar uso de trfego de texto simples</h2> 242 243 <p> 244 Aplicativos que pretendem se conectar a destinos usando apenas conexes 245 seguras podem cancelar o uso de texto simples de suporte (usando o protocolo HTTP no criptografado 246 em vez de HTTPS) para esses destinos. Essa opo ajuda a evitar 247 regresses acidentais em aplicativos devido a alteraes nos URLs fornecidos por fontes externas, 248 como servidores de back-end. 249 Consulte {@link android.security.NetworkSecurityPolicy#isCleartextTrafficPermitted 250 NetworkSecurityPolicy.isCleartextTrafficPermitted()} para saber mais. 251 </p> 252 253 <p> 254 Por exemplo, um aplicativo pode querer garantir que todas as conexes com {@code 255 secure.example.com} sejam sempre realizadas por HTTPS para proteger o trfego confidencial 256 de redes hostis. 257 </p> 258 259 <p> 260 <code>res/xml/network_security_config.xml</code>: 261 <pre> 262 <?xml version="1.0" encoding="utf-8"?> 263 <network-security-config> 264 <domain-config usesCleartextTraffic="false"> 265 <domain includeSubdomains="true">secure.example.com</domain> 266 </domain-config> 267 </network-security-config> 268 </pre> 269 </p> 270 271 272 <h2 id="CertificatePinning">Fixar certificados</h2> 273 274 <p> 275 Normalmente, um aplicativo confia em todas as CAs pr-instaladas. Se qualquer uma dessas CAs 276 emitir um certificado fraudulento, o aplicativo estar em risco de ataques 277 MiTM. Alguns aplicativos optam por limitar o conjunto de certificados que aceitam 278 restringindo o conjunto de CAs ou fixando certificados. 279 </p> 280 281 <p> 282 A fixao de certificados realizada ao fornecer um conjunto de certificados pelo hash da 283 chave pblica (SubjectPublicKeyInfo do certificado X.509). Uma cadeia de certificados 284 vlida somente se contiver pelo menos uma 285 das chaves pblicas fixadas. 286 </p> 287 288 <p> 289 Observe que, ao usar a fixao de certificados, voc deve sempre incluir uma chave de backup 290 para que, se voc for forado a alternar para novas chaves ou alterar as CAs (ao 291 fixar um certificado de CA ou um intermedirio dessa CA), a 292 conectividade do seu aplicativo no seja afetada. Caso contrrio, voc precisar enviar 293 uma atualizao ao aplicativo para restaurar a conectividade. 294 </p> 295 296 <p> 297 Alm disso, possvel definir um tempo de expirao para as fixaes, aps o qual 298 elas no sejam mais realizadas. Isso ajuda a evitar problemas de conectividade 299 em aplicativos que no foram atualizados. No entanto, definir um tempo de expirao 300 para fixaes pode permitir que as fixaes sejam ignoradas. 301 </p> 302 303 <p> 304 <code>res/xml/network_security_config.xml</code>: 305 <pre> 306 <?xml version="1.0" encoding="utf-8"?> 307 <network-security-config> 308 <domain-config> 309 <domain includeSubdomains="true">example.com</domain> 310 <pin-set expiration="2018-01-01"> 311 <pin digest="SHA-256">7HIpactkIAq2Y49orFOOQKurWxmmSFZhBCoQYcRhJ3Y=</pin> 312 <!-- backup pin --> 313 <pin digest="SHA-256">fwza0LRMXouZHRC8Ei+4PyuldPDcf3UKgO/04cDM1oE=</pin> 314 </pin-set> 315 </domain-config> 316 </network-security-config> 317 </pre> 318 </p> 319 320 321 <h2 id="ConfigInheritance">Comportamento de herana de configurao</h2> 322 323 <p> 324 Valores no definidos em uma configurao especfica so herdados. Esse comportamento permite 325 configuraes mais complexas, mantendo o arquivo de configurao legvel. 326 </p> 327 328 <p> 329 Se um valor no for definido em uma entrada especfica, o valor da prxima entrada 330 mais genrica ser usado. Valores no definidos em um {@code domain-config} so 331 obtidos pelo {@code domain-config} pai, se aninhados, ou, caso contrrio, pelo {@code 332 base-config}. Valores no definidos no {@code base-config} usam os 333 valores padro da plataforma. 334 </p> 335 336 <p> 337 Por exemplo, considere um caso no qual todas as conexes para subdomnios de {@code 338 example.com} devem usar um conjunto personalizado de CAs. Alm disso, o trfego de texto simples para esses 339 domnios permitido <em>exceto</em> ao se conectar com {@code 340 secure.example.com}. Ao aninhar a configurao para {@code 341 secure.example.com} dentro da configurao para {@code example.com}, o 342 {@code trust-anchors} no precisa ser duplicado. 343 </p> 344 345 <p> 346 <code>res/xml/network_security_config.xml</code>: 347 <pre> 348 <?xml version="1.0" encoding="utf-8"?> 349 <network-security-config> 350 <domain-config> 351 <domain includeSubdomains="true">example.com</domain> 352 <trust-anchors> 353 <certificates src="@raw/my_ca"/> 354 </trust-anchors> 355 <domain-config cleartextTrafficPermitted="false"> 356 <domain includeSubdomains="true">secure.example.com</domain> 357 </domain-config> 358 </domain-config> 359 </network-security-config> 360 </pre> 361 </p> 362 363 364 <h2 id="FileFormat">Formato do arquivo de configuraes</h2> 365 366 <p> 367 O recurso de configuraes de segurana de rede usa um formato do arquivo XML. 368 A estrutura geral desse arquivo mostrada no seguinte exemplo de cdigo: 369 </p> 370 371 <pre> 372 <?xml version="1.0" encoding="utf-8"?> 373 <network-security-config> 374 <base-config> 375 <trust-anchors> 376 <certificates src="..."/> 377 ... 378 </trust-anchors> 379 </base-config> 380 381 <domain-config> 382 <domain>android.com</domain> 383 ... 384 <trust-anchors> 385 <certificates src="..."/> 386 ... 387 </trust-anchors> 388 <pin-set> 389 <pin digest="...">...</pin> 390 ... 391 </pin-set> 392 </domain-config> 393 ... 394 <debug-overrides> 395 <trust-anchors> 396 <certificates src="..."/> 397 ... 398 </trust-anchors> 399 </debug-overrides> 400 </network-security-config> 401 </pre> 402 403 <p> 404 As sees a seguir descrevem a sintaxe e outros detalhes do formato do 405 arquivo. 406 </p> 407 408 <h3 id="network-security-config"> 409 <network-security-config> 410 </h3> 411 412 <dl class="xml"> 413 <dt> 414 pode conter: 415 </dt> 416 417 <dd> 418 0 ou 1 de <code><a href="#base-config"><base-config></a></code><br> 419 Qualquer nmero de <code><a href= 420 "#domain-config"><domain-config></a></code><br> 421 0 ou 1 de <code><a href="#debug-overrides"><debug-overrides></a></code> 422 </dd> 423 </dl> 424 425 <h3 id="base-config"> 426 <base-config> 427 </h3> 428 429 <dl class="xml"> 430 <dt> 431 sintaxe: 432 </dt> 433 </dl> 434 435 <pre class="stx"> 436 <base-config <a href= 437 "#usesCleartextTraffic">usesCleartextTraffic</a>=["true" | "false"]> 438 ... 439 </base-config> 440 </pre> 441 <dl class="xml"> 442 <dt> 443 pode conter: 444 </dt> 445 446 <dd> 447 <code><a href="#trust-anchors"><trust-anchors></a></code> 448 </dd> 449 450 <dt> 451 descrio: 452 </dt> 453 454 <dd> 455 A configurao padro usada por todas as conexes cujo destino no 456 coberto por um <a href="#domain-config"><code>domain-config</code></a>. 457 458 <p> 459 Qualquer valor no definido usa os valores padro da plataforma. A configurao padro 460 para aplicativos direcionados a nveis de API acima do 24: 461 </p> 462 463 <pre> 464 <base-config usesCleartextTraffic="true"> 465 <trust-anchors> 466 <certificates src="system" /> 467 </trust-anchors> 468 </base-config> 469 </pre> 470 A configurao padro para aplicativos direcionados a nveis de API 23 e inferiores: 471 <pre> 472 <base-config usesCleartextTraffic="true"> 473 <trust-anchors> 474 <certificates src="system" /> 475 <certificates src="user" /> 476 </trust-anchors> 477 </base-config> 478 </pre> 479 480 </dd> 481 </dl> 482 483 <h3 id="domain-config"><domain-config></h3> 484 <dl class="xml"> 485 <dt>sintaxe:</dt> 486 <dd> 487 <pre class="stx"><domain-config <a href="#usesCleartextTraffic">usesCleartextTraffic</a>=["true" | "false"]> 488 ... 489 </domain-config></pre> 490 </dd> 491 492 <dt>Pode conter:</dt> 493 494 <dd> 495 1 ou mais <code><a href="#domain"><domain></a></code> 496 <br/>0 ou 1 <code><a href="#trust-anchors"><trust-anchors></a></code> 497 <br/>0 ou 1 <code><a href="#pin-set"><pin-set></code></a> 498 <br/>Qualquer nmero de <code><domain-config></code> aninhados</dd> 499 500 <dt>Descrio</dt> 501 <dd>A configurao usada para conexes com destinos especficos, conforme definido pelos elementos {@code domain}. 502 503 <p>Observe que, se vrios elementos {@code domain-config} cobrirem um destino, a configurao com a regra de domnio correspondente 504 mais especfica (mais longa) ser usada.</p></dd> 505 </dl> 506 507 508 <h3 id="domain"><domain></h3> 509 510 <dl class="xml"> 511 <dt> 512 sintaxe: 513 </dt> 514 515 <dd> 516 <pre class="stx"> 517 <domain includeSubdomains=["true" | "false"]>example.com</domain> 518 </pre> 519 </dd> 520 521 <dt> 522 Atributos: 523 </dt> 524 525 <dd> 526 <dl class="attr"> 527 <dt> 528 {@code includeSubdomains} 529 </dt> 530 531 <dd> 532 Se {@code "true"}, a regra de domnio corresponder ao domnio e a todos os 533 subdomnios, incluindo subdomnios de subdomnios. Caso contrrio, a regra 534 se aplica apenas a correspondncias exatas. 535 </dd> 536 </dl> 537 </dd> 538 539 <dt> 540 Descrio: 541 </dt> 542 </dl> 543 544 <h3 id="debug-overrides"><debug-overrides></h3> 545 546 <dl class="xml"> 547 <dt> 548 sintaxe: 549 </dt> 550 551 <dd> 552 <pre class="stx"> 553 <debug-overrides> 554 ... 555 </debug-overrides> 556 </pre> 557 </dd> 558 559 <dt> 560 Pode conter: 561 </dt> 562 563 <dd> 564 0 ou 1 <code><a href="#trust-anchors"><trust-anchors></a></code> 565 </dd> 566 567 <dt> 568 Descrio: 569 </dt> 570 571 <dd> 572 Substituies a serem aplicadas quando <a href="{@docRoot}guide/topics/manifest/application-element.html#debug">android:debuggable</a> 573 for {@code "true"}, o que normalmente ocorre em compilaes de no lanamento 574 geradas por IDEs e ferramentas de compilao. ncoras de confiana especificadas em {@code 575 debug-overrides} so adicionadas a todas as demais configuraes e a fixao 576 de certificados no realizada quando a cadeia de certificados do servidor usa uma 577 dessas ncoras de confiana somente de depurao. Se <a href="{@docRoot}guide/topics/manifest/application-element.html#debug">android:debuggable</a> 578 for {@code "false"}, esta seo ser ignorada por completo. 579 </dd> 580 </dl> 581 582 <h3 id="trust-anchors"><trust-anchors></h3> 583 <dl class="xml"> 584 <dt> 585 sintaxe: 586 </dt> 587 588 <dd> 589 <pre class="stx"> 590 <trust-anchors> 591 ... 592 </trust-anchors> 593 </pre> 594 </dd> 595 596 <dt> 597 Pode conter: 598 </dt> 599 600 <dd> 601 Qualquer nmero de <code><a href="#certificates"><certificates></a></code> 602 </dd> 603 604 <dt> 605 Descrio: 606 </dt> 607 608 <dd> 609 Conjunto de ncoras de confiana para conexes seguras. 610 </dd> 611 </dl> 612 613 614 <h3 id="certificates"><certificates></h3> 615 <dl class="xml"> 616 <dt>sintaxe:</dt> 617 <dd><pre class="stx"><certificates src=["system" | "user" | "<i>raw resource</i>"] 618 overridePins=["true" | "false"] /> 619 </pre></dd> 620 <dt>descrio:</dt> 621 <dd>Conjunto de certificados X.509 para elementos {@code trust-anchors}.</dd> 622 623 <dt>atributos:</dt> 624 <dd><dl class="attr"> 625 <dt>{@code src}</dt> 626 <dd> 627 A fonte de certificados de CA, que pode ser um dos 628 <ul> 629 <li>IDs de recursos brutos que apontam para um arquivo que contm certificados X.509. 630 Os certificados devem ser codificados em formato DER ou PEM. No caso de certificados PEM, 631 o arquivo <em>no deve</em> conter dados no PEM adicionais, como 632 comentrios. 633 </li> 634 635 <li>{@code "system"} para os certificados de CA pr-instalados do sistema 636 </li> 637 638 <li>{@code "user"} para certificados de CA adicionados pelo usurio 639 </li> 640 </ul> 641 </dd> 642 643 <dt>{@code overridePins}</dt> 644 <dd> 645 <p> 646 Especifica se as CAs dessa fonte ignoram a fixao de certificados. Se {@code 647 true} e forem certificadas cadeias de certificados que incluam uma das CAs dessa 648 fonte, a fixao no ser realizada. Isso pode ser til para depurar CAs 649 ou permitir que o usurio execute ataques MiTM no trfego seguro do seu aplicativo. 650 </p> 651 652 <p> 653 O padro {@code "false"} a no ser que seja especificado em um elemento {@code debug-overrides} 654 . Nesse caso, o padro ser {@code "true"}. 655 </p> 656 </dd> 657 </dl> 658 </dd> 659 660 661 <h3 id="pin-set"><pin-set></h3> 662 663 <dl class="xml"> 664 <dt> 665 sintaxe: 666 </dt> 667 668 <dd> 669 <pre class="stx"> 670 <pin-set expiration="date"> 671 ... 672 </pin-set> 673 </pre> 674 </dd> 675 676 <dt> 677 Pode conter: 678 </dt> 679 680 <dd> 681 Qualquer nmero de <code><a href="#pin"><pin></a></code> 682 </dd> 683 684 <dt> 685 Descrio: 686 </dt> 687 688 <dd> 689 Um conjunto de fixaes de chave pblica. Para que uma conexo segura seja confivel, uma das 690 chaves pblicas na cadeia de confiana deve estar presente no conjunto de fixaes. Consulte 691 <code><a href="#pin"><pin></a></code> para saber mais sobre o formato das fixaes. 692 </dd> 693 694 <dt> 695 Atributos: 696 </dt> 697 698 <dd> 699 <dl class="attr"> 700 <dt> 701 {@code expiration} 702 </dt> 703 704 <dd> 705 A data, no formato {@code yyyy-MM-dd}, aps a qual as fixaes 706 expiram e so desativadas. Se o atributo no for definido, as fixaes 707 no expiraro. 708 <p> 709 A expirao ajuda a evitar problemas de conectividade em aplicativos que no 710 recebem atualizaes para o conjunto de fixaes, por exemplo, porque o usurio 711 desativou as atualizaes do aplicativo. 712 </p> 713 </dd> 714 </dl> 715 </dd> 716 </dl> 717 718 <h3 id="pin"><pin></h3> 719 <dl class="xml"> 720 <dt> 721 sintaxe: 722 </dt> 723 724 <dd> 725 <pre class="stx"> 726 <pin digest=["SHA-256"]>base64 encoded digest of X.509 727 SubjectPublicKeyInfo (SPKI)</pin> 728 </pre> 729 </dd> 730 731 <dt> 732 Atributos: 733 </dt> 734 735 <dd> 736 <dl class="attr"> 737 <dt> 738 {@code digest} 739 </dt> 740 741 <dd> 742 O algoritmo de resumo usado para gerar a fixao. No momento, apenas 743 {@code "SHA-256"} permitido. 744 </dd> 745 </dl> 746 </dd> 747 </dl> 748