OCSP é realmente apenas um meio diferente para o mesmo fim: verificar se um determinado certificado é revogado. Ambos podem ser considerados uma lista negra; com uma CRL, o cliente pegará a lista inteira e verificará o certificado individual em si, enquanto que com OCSP ele está enviando uma solicitação para obter o status em um certificado individual sem precisar fazer o download da lista completa.
O OSCP é, como o nome indica, um protocolo online; não é apropriado para o cache. Usando uma CRL seria o caminho a percorrer para a operação offline; como eles podem ficar grandes e as verificações são necessárias com bastante frequência, a maioria dos sistemas operacionais manterá um cache de CRLs que eles usaram recentemente (depende do aplicativo que está sendo usado, é claro), que caberia muito bem para o que você está procurando. Além disso, use os meios necessários para levar esse arquivo CRL para os clientes e tenha a lista de certificados raiz como algo para um CDP que eles possam acessar localmente.
No entanto, existem desvantagens definitivas. Obviamente, o armazenamento em cache traz consigo o risco de permitir um certificado revogado com uma CRL desatualizada ou, no extremo oposto, atingir um momento ruim na expiração da CRL e fazer com que sua CRL em cache seja descartada antes de se reconectar à rede. Além disso, verifique se o certificado raiz não lista uma CRL delta; Isso reduziria significativamente o tempo de vida efetivo do cache, exigindo uma cópia atual de um delta de curta duração para cada verificação.
O tempo de vida da CRL será a maior consideração de design; você precisará equilibrar a necessidade de os clientes terem cópias sempre funcionando, com o atraso tolerável para garantir que um certificado revogado não seja mais confiável.