Certified assets canister: Body does not pass verification when file splited

I use this certified assets canister and then use icx-asset to upload images:

icx-asset --pem ~/.config/dfx/identity/icp/identity.pem --replica https://ic0.app sync lxvgu-hiaaa-aaaag-qagaa-cai .

I found that if the image is smaller than 1900000 bytes, it will be uploaded in its entirety and accessed normally:


https://lxvgu-hiaaa-aaaag-qagaa-cai.ic0.app/music.jpeg

and if the image is larger than 1900000 bytes, it will be split into pieces and uploaded. But it cannot be accessed normally. I suspect that there is a problem with the assembly.

Here is a similar phenomenon:

2 Likes

Canisters are not yet able to certify chunks, and boundary nodes and the service-worker do not check chunk certificates, respectively.
There is topic about same problem

I even prepared a draft solution for this problem, but it has not been reviewed yet

Let’s hope that dfinity-team will pay attention to this problem

1 Like

So is there any good solutions?
my requirement is

  • Ability to deploy a single image of around 2.5 MB into the IC canister
  • Can be accessed through xxx.ic0.app/xxx.png.

Many thanks.

@diegop

2 Likes