多项选择题

A.通过解决复杂的数学难题来验证交易
B.确保区块链的安全性和不可篡改性
C.消耗大量计算资源
D.易于受到51%攻击
E.适用于所有区块链项目