Q:

Vale a pena 'embaralhar' ID que será passado via URL? 

Estávamos conversando sobre segurança em banco de dados. 
Veio a questão: vale a pena criptografar IDs vindos do banco de dados para o frontend? 
Ex.:  clico em um cliente de uma lista onde o link vai http://localhost/get_posts/id_criptografado me retorna todos os posts deste. 
Enfim, uma aplicação ficaria mais segura utilizando os IDs criptografados? 

A:

Acho que você tem que definir quais são suas preocupações, para então saber se vale ou não apena. 

Existem casos e casos de uso.  O YouTube é um exemplo, ele não usa identificadores sequenciais.  Isso é: um vídeo será youtube.com/1 outro será youtube.com/821, ao invés de /2.  
Agora, qual motivo leva o YouTube a gerar identificadores não-sequenciais?  Para prevenir que acessasse vídeos "não-listados", afinal se fossem sequencial você poderia acessar os vídeos com /3, /4, /5 e, creio eu, para não conflitar com vários envios simultâneos...

PS: O YouTube, assim como o Instagram, não usa números, mas ele codifica para Base64.  A codificação NÃO tem haver com a segurança, a vantagem é que tanto faz se for 1 ou 18446744073709551614, ele será representado pela mesma quantidade de caracteres e usará menos do que se usar números, já que os dois números podem ser guardados em 8 bytes. 

Expor o ID em geral não é um problema, o Facebook e o Instagram, expõe o ID do usuário e é sequencial também.  A primeira foto do Instagram é o ID: 2 e o primeiro do Facebook é o ID: 4, mas isso é um problema?!  Não problema em sabermos dessa informação. 

PS: Note, publicações privadas no Instagram possuem outro identificador, que é mais longo e não parece ser sequencial. 

Se for, o meu conselho seria: cria um outra coluna como id_random, e use ele como um id. Não será preciso de nada relacionado à criptografia, exceto um gerador aleatório seguro, e só.  Mas, se você quer que cada usuário veja um ID diferente, então derive ele usando algum KDF (um HMAC/Keyed-Hash) para uma chave especifica por usuário ou encripte usando algum algoritmo que garanta integridade (AES-GCM, ChaCha20Poly1305, Salsa20Poly1305...) ou use algum "obscurador não-criptográfico ao seu desejo", dessa forma o identificador de um usuário (ou de um "alguma coisa") vai variar dependendo de quem está conectado no momento.  Agora onde isso pode ser útil?  Não sei. 