Vinícius Campitelli

Vinícius Campitelli

github.com/vcampitelli

Quem sou eu?

O que eu faço?

php html5 css3 javascript

mysql mongodb rabbitmq

linux python bash

Palestras

libsodium no PHP 7

Apresentação no DarkMira Tour 2018

A libsodium é uma biblioteca moderna de criptografia e foi incluída no core do PHP 7.2, o que representa um posicionamento muito interessante da comunidade no quesito de segurança. Veremos como utilizar essa lib para:

  • Geração de dados aleatórios
  • Prevenção de timing attacks
  • Criptografia simétrica (secret key)
  • Criptografia assimétrica (par de chaves: pública e privada)
  • Hashing para autenticidade de mensagens e criação de senhas
  • Criptografia com autenticidade
  • Troca de chaves utilizando o algoritmo Diffie-Hellman
  • Overview da criptografia de curvas elípticas

Ver scripts

Zend Expressive com OAuth 2 e JWT

Apresentações no PHPeste 2017 e na PHPConference 2017

O Zend Expressive é o micro-framework da Zend que implementa a PSR-7, lançado oficialmente em 2016. A versão 2 foi lançada em março de 2017 e tem recebido bastante destaque desde então. Aprenda sobre middlewares, controllers, factories e injeção de dependências via containers. Entenda OAuth2 e como utilizá-lo para realizar a autorização de APIs, usando JSON Web Tokens (JWT) para lidar com access tokens.

Acessar slides

Criptografia com PHP

Apresentação na PHPConference 2017

Prática e estudo que consiste em transformar uma informação (texto claro) em um código cifrado, para que apenas as pessoas/sistemas escolhidos possam decifrar. Pontos abordados: Tipos de criptografia (simétrica e assimétrica); Cifras e modos de operação; Geradores de aleatoriedade e vetores de inicialização; Hashing; Assinaturas.

Acessar slides

PHP fora da Web

Apresentação na PHPExperience 2018

O PHP foi inicialmente feito para a Web, mas também podemos utilizá-lo para criar CLI scripts e até mesmo daemons. É lógico que existem linguagens focadas para isso, mas em alguns cenários podemos aproveitar os códigos PHP já existentes no backend e também a experiência dos programadores da equipe. Iremos ver como lidar com argumentos para scripts e roteá-los para comandos, como criar mecanismos de controle e execução de processos externos e em background e ter códigos que sejam reaproveitáveis entre ambientes.

Acessar slides