Quando não é possível autenticar-se a si mesmo em algum servidor CHAP, o programa pppd pesquisa o arquivo pap-secrets buscando uma entrada com o campo cliente igual ao nome da máquina local e com o campo servidor igual ao nome da máquina remota igual à que tenha enviado o ``desafio''. Ao requerer da outra ponta que se autentique, as regras são simplesmente invertidas: o programa pppd procurará por uma entrada aonde o cliente seja igual ao nome da máquina remota (enviado na resposta do cliente CHAP) e onde o campo servidor seja igual ao nome de máquina local.
A seguir apresentamos um exemplo de um arquivo chap-secrets para a máquina aracaju:8.19
Ao estabelecer uma conexão com itaim, este solicitará a aracaju que se autentique usando CHAP e enviando um ``desafio''. O programa pppd pesquisará o arquivo chap-secrets por uma entrada onde o campo cliente seja igual a aracaju.cvirtual.com.br e o servidor seja igual a itaim.engenho.com.br8.20, selecionando então a primeira linha do arquivo acima. É então produzida a resposta CHAP contendo o desafio e a resposta, que será então enviada para itaim.
Ao mesmo tempo, o programa pppd compõe um ``desafio'' CHAP para itaim, contendo uma expressão e o nome totalmente qualificado: aracaju.cvirtual.com.br. itaim constrói a resposta CHAP na maneira discutida anteriormente e a retorna para aracaju. O programa pppd extrai o nome da máquina cliente (itaim.engenho.com.br) a partir da resposta, pesquisa o arquivo chap-secrets por uma linha onde itaim seja o cliente e aracaju o servidor. A segunda linha é então selecionada, o programa pppd combina o ``desafio'' CHAP com a senha ``caragua'', encriptando-os e compara o resultado com a resposta CHAP da máquina itaim.
O quarto campo opcional lista os endereços IP que são aceitos para os clientes nomeados na primeira coluna. Os endereços podem ser fornecidos no formato decimal, separado por pontos ou como nomes de máquinas, as quais são pesquisadas pelo resolvedor de nomes. Por exemplo, se itaim solicita um endereço IP durante uma negociação IPCP que não esteja na lista, o pedido será rejeitado, e IPCP será finalizado. No arquivo de exemplo apresentado acima, itaim está limitado a usar o seu próprio endereço IP. Caso o campo de endereço esteja vazio, qualquer endereço IP será aceito.
A terceira linha do arquivo de exemplo chap-secrets permite que qualquer máquina estabeleça uma conexão PPP com aracaju, uma vez que o campo cliente contém um *, que significa ``qualquer nome''. O único requisito é que ele conheça o segredo (guarapuava) e use o endereço de jau.cvirtual.com.br. O caracter de generalização (*) pode aparecer em qualquer ponto do arquivo de segredos, uma vez que o programa pppd irá sempre utilizar a informação mais específica que se aplicar a um par cliente/servidor.
Há ainda algumas informações que precisam ser ditas sobre a forma como pppd pesquisa o arquivo de segredos. Como explicado anteriormente, o nome da máquina remota é sempre enviado pela outra ponta da conexão. O nome de máquina local será derivado de uma chamada à função gethostname(2). Caso o sistema local esteja configurado com um nome de máquina não qualificado, então o programa pppd deverá ser informado do nome do domínio local através da opção domain:
Esta medida irá anexar o nome de domínio da Cervejaria Virtual ao nome da máquina aracaju para todas as atividades relacionadas com autenticações. Outras opções podem modificar o conceito do nome da máquina local para o programa pppd, como por exemplo as opções usehostname e name. Ao se fornecer o endereço IP na linha de comando utilizando-se as opções ``local:varremoto'' e local é um nome ao invés de uma notação decimal do endereço IP, pppd irá usar este nome ao invés do nome da máquina local. Para maiores detalhes, por favor consulta a página de manual do programa pppd(8).