DH interfaces

Based on #1315