Is it possible to create a shader that treats the edges of an object differently?

can we erode it edge for realistic effect ?
how can something similar 1 bevel edge 2 change corner erosion 3 eroded place change color